您当前的位置:首页 > 社会新闻

微软2022新bug:由于日期数据溢出,大量程序员连夜加班。

编辑:够好生活网 发布于 2022-01-02 14:34:04 共9人阅读 分享到
文章导读

没想到,2022年的到来,也给微软带来了新的bug。随着日期从2021年12月31日跳转到2022年1月1日,很多使用微软Exchange的公司发现自己写的新年祝福等邮件突然发不出去了。 ...恩山无线论坛 .

没想到,2022年的到来,也给微软带来了新的bug。
随着日期从2021年12月31日跳转到2022年1月1日,很多使用微软Exchange的公司发现自己写的新年祝福等邮件突然发不出去了。
ExchangeServer是微软推出的一套电子邮件服务组件,可用于构建企业、大学或机构的邮件系统。简而言之,它不仅可以构建邮箱工作组,还可以协调内部工作流。
这些公司的留在这些公司的邮箱服务器中,有的甚至达到几十万封,面临着服务器无法存储的问题。
目前这个bug已经在Reddit热了几千,很多人说这个bug年都没跨好:
新年快乐!

我还在度假,所以我把它拉回来处理这个东西
那到底是怎么回事呢?
微软2022版千年虫
Exchange管理员JosephRosen表示,这是一个由2022年到来引起的bug。
这个bug的根源是微软Exchange上的邮件过滤管理系统(FIP-FS),它使用一种名为yymmdHMM的符号变量(Int32,即long)来存储日期。
其中,yymmdHHMM分别是指用两存储年(years)、月(months)、日(days)、小时(hours)、分钟(minutes)。
这种数据类型存在一个问题:
Int32最多只能存储-2147483647到+2147483647的数据。

然而,自2022年1月1日0时起,yymdHMMyy已成为22,超出了Int32所能存储的最大数据范围:
21474836472XXXXXXXX。
因此,2022年1月1日,所有使用Exchange服务器发送电子邮件的公司都收到了这样的错误提醒:
TheFIP-FScanProcesfailedization.Eror:0x8004005.Erordetails:UnspecifiederororErorcode:0x80004005.Erordescription:Cantcont22010001tolong..
它最初被一个名为@miketheitguy的推特用户发现:
因为和千年虫一样,它们都是日期带来的bug,这个bug也被一些Exchange管理员命名为Y2K22。
其中,Y2K是指著名的千年虫问题,因为有些计算机程序只用两位十进制数来表示年份,跨世纪就会出现错误的结果;22指2022年。
在许多ExchangeServer版本中,这个bug有同样的问题,包括2016和2019。
目前,微软Exchange团队正在紧急修复中。
他们说,ExchangeServer更新将在几天内发布,日期将由更大的变量类型保存。
然而,在此之前,使用ExchangeServer的公司必须找到发送电子邮件的方法。
一些权宜之计。
微软团队表示,如果需要发送紧急邮件,需要关闭Exchange中的FIP-FS功能。
这是Exchange上的垃圾邮件过滤器,通常用于扫描邮件中的恶意软件或垃圾邮件。
目前,微软官员还提供了一些禁用或绕过恶意软件扫描的方法。
然而,这种操作的是公司邮箱可能会收到更多的垃圾邮件。
对此,有网友调侃,如果微软在修复过程中将符号变量改为无符号变量,那么数据的表示范围将变为0~4294967295,Exchange邮箱将再次使用到2043年。

此外,Reddit网民还提供了其他解决方案。
例如,一些网民发布了一个非官方定制脚本,可以将日期返回到2021年,但他说,所有的风险都需要用户自己承担。
如果您还没有考虑如何解决您的Exchange邮箱系统问题,您可以先尝试以上方法。

声明:本文内容来自用户上传并发布或网络新闻客户端自媒体,本站点仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系删除。

标签:

相关文章

最新文章

(c)2011- 东南医疗网 All Rights Reserved
   备案号:赣ICP备2022007289号