Skip navigation

Testing your Exchange Servers for Y2K Readiness

Thanksgiving is a time to be thankful—thankful that you're not at work keeping your Exchange Server deployment running. We’re getting closer to that magical time—12:01 A.M., January 1, 2000. Do you know how your Exchange server is going to act? Microsoft has many resources to assess your Exchange deployment to ensure that it's Y2K ready.

One technique Microsoft proposes to test Y2K readiness is advancing and rolling back the system time on your Exchange server. You should only advance or roll back system time in a test environment, not in a production environment. Performing such an operation in a production environment can cause the loss of all pending mail or cause replication problems, and might require you to restart Exchange services.

Here are a few important things to consider when you modify the system time to test Y2K readiness. First, all Y2K test scenarios must be valid and realistic. For example, rolling the system time back after you've advanced it isn't a valid test scenario because this is not something that will happen to your deployment. Also, results will be unpredictable if you roll the time back while messages are pending in the system. Next, consider setting up a test environment that simulates part of your Exchange Server topology. After you set up this environment, change the system time on all servers to December 31, 1999. Then, start sending messages, and let the date roll over to January 1, 2000.

As far as the Exchange database engine is concerned, the Extensible Storage Engine (ESE) uses an internal date range of 1900 to 2156. Internally, the Exchange information store (IS) stores year dates in four digits using the types FILETIME or SYSTIME. In a few cases, the IS accepts a two-digit year. These are cases where other components, such as the Internet Mail Service (IMS), hand the IS an Internet standard RFC 822 message. The IS stores these dates as the number of seconds since January 1, 1986. This technical approach gives the IS a date range of 1986 to 2085. It looks like 2156 and 2085 will be problem years for Exchange Server 5.5. No worries, we’ll all be gone before then (I’m sure that’s what the developers were thinking). Either that or we’ll be deploying Exchange 2100 Server.

Looking at other key components of Exchange, Outlook Web Access (OWA) is limited to dates between 1/1/1970 and 1/19/2038. The Exchange Message Transfer Agent (MTA) is an X.400 standard MTA. X.400 itself is not Y2K compliant because the Abstract Syntax Notation (ASN.1) type Universal Time Coordinate (UTC) Time defined by ISO/CCITT uses a two-digit date format for years. When these ASN.1 dates arrive from other systems, the MTA converts them to determine the century. If the year is in the range 50 through 99 the MTA converts the date to 1950 through 1999. If the year is in the range 00 through 49, it converts the date to 2000 through 2049. Therefore, the MTA can tolerate dates between 1950 and 2049.

If you haven’t done so already, take time to research the issues for Microsoft Exchange Y2K compliance. Also, don’t forget about your hardware vendor; ensure your server is actually capable of rolling to 1/1/2000. For more information from Microsoft, take a look at the following URLs:

Hide comments


  • Allowed HTML tags: <em> <strong> <blockquote> <br> <p>

Plain text

  • No HTML tags allowed.
  • Web page addresses and e-mail addresses turn into links automatically.
  • Lines and paragraphs break automatically.