Technology

Microsoft’s No. 1 bug in 2022 allows a large number of programmers to work overtime round the clock

Unexpectedly, the arrival of 2022 will also bring a new bug to Microsoft. As the date jumps from December 31, 2021, to January 1, 2022, many companies using Microsoft Exchange have found that their written New Year greetings and other e-mails suddenly cannot be sent.


Exchange Server is a set of e-mail service components launched by Microsoft, which can be used to build e-mail systems for enterprises, universities, or institutions. Simply put, it can not only build a “mailbox workgroup”, but also coordinate internal workflows. A large number of mails are stuck in the mailbox servers of these companies, some even reaching hundreds of thousands, and they are facing the problem of server storage. At present, this bug has become popular on Reddit for thousands of people, and many people said that “fix the bug here after the year has passed”: Happy New Year (beep)! I was still on vacation, so I brought it back to deal with this stuff…So what is going on? Microsoft 2022 “Millennium Bug” According to Joseph Roosen, an Exchange administrator, this is a bug caused by the arrival of “2022.” The root cause of this bug is the mail filtering management system (FIP-FS) on Microsoft Exchange, which uses a signed variable (Int32, which is long) called “yymmddHHMM” to store the date. Among them, yymmddHHMM refers to using two digits to store years (years), months (months), days (days), hours (Hours), minutes (Minutes).

There is a problem with this data type: Signed Int32 can only store data from -2147483647 to +2147483647 at most. However, starting from 0:00 on January 1, 2022, the yy of “yymmddHHMM” has become “22”, which exceeds the maximum range of data that Int32 can store: 214748364722XXXXXXX As a result, on January 1, 2022, all companies that used Exchange servers to send emails received such an error alert: The FIP-FS Scan Process failed initialization. Error: 0x8004005. Error Details: Unspecified Error” or “Error Code: 0x80004005. Error Description: Can’t convert “2201010001” too long. Convert “2201010001” to the long data type) It was first discovered by a Twitter user named @miketheitguy: Since the same as the “Millennium Bug” is a bug brought to the computer by the date, this time the bug was also named Y2K22 by some Exchange administrators. Among them, Y2K refers to the famous “millennium bug” problem. Because some computer programs only use two decimal digits to represent the year, wrong results will occur when the century crosses the century; 22 refers to 2022. This bug has the same problem in many Exchange Server versions, including 2016 and 2019.

Currently, Microsoft’s Exchange team is urgently repairing it. They stated that an Exchange Server update will be released in a few days, which will use a larger variable type to store the date. However, before that, companies that use Exchange Server must find a way to send out emails. Some expedients Microsoft team stated that if there is a very urgent email that needs to be sent, the FIP-FS function in Exchange needs to be turned off first. This is a spam filter on Exchange. It is usually used to scan emails for malicious software or spam. At present, Microsoft officials also provide some methods to disable or bypass malware scanning. However, the consequence of this operation is that the company mailbox “may receive more spam”.

Some netizens ridiculed this, if Microsoft changes signed variables to unsigned variables in the repair, the data representation range will become 0~4294967295, and Exchange mailboxes can be used until 2043. In addition, Reddit netizens currently offer some other solutions. For example, a netizen released an unofficial custom script that can roll back the date to 2021, but he said that all risks need to be borne by the user. If you haven’t figured out how to solve your Exchange mailbox system problem, you can try these methods first.