We're in the middle of converting a client from Windows NT/Exchange Server 5.5 to Windows Server 2003/Exchange Server 2003. Because we're migrating from Exchange 5.5 to Exchange 2003, we had to install the Active Directory Connector (ADC) to get Exchange 2003 and Exchange 5.5 to talk to each other. All was going well; we had the Exchange 2003 servers in-place, and we had moved most of the mailboxes from Exchange 5.5 to Exchange 2003. This client has a WAN with four locations and an Exchange Server in each location. We received a call from the client saying it couldn't add a new user to the network. This problem seemed odd because the migration was going smoothly up to this point. Existing users were migrated from the old NT domain into one master Active Directory (AD) domain, and they were able to access their mail, which had been migrated from Exchange 5.5 to Exchange 2003.

As you know, adding a new user into AD and creating a mailbox isn't rocket science, and the client has competent people working in its IT department. We decided to go to the client and investigate.

We tried to add a new user to AD, but we were unable to open the new user’s mailbox. We thought perhaps something was improperly configured in the Microsoft Management Console (MMC) Active Directory Sites and Services snap-in. We double-checked the replication configuration. Every site had a designated bridgehead server. All bridgehead servers were set to replicate with each other every 15 minutes. Each bridgehead server was configured to replicate with other domain controllers (DCs) in its home site. Just for kicks, we forced an AD replication across all DCs, thinking that would solve the problem. We checked Windows Event Viewer for any AD replication error messages, but found none. When we tried to configure Microsoft Outlook to use the new user’s mailbox, Outlook wouldn't resolve the new user’s name. As a test, we tried to log into the Windows 2003 domain with the new user’s ID and password and were able to do so. Hmm… Something was preventing Exchange from getting updates to AD. We looked at the Event Viewer and noticed an Event ID 8331 in the Application event log. The text of the error message reads:

Type: Error
Source: MSExchangeAL
Category: Address List Synchronization
Event ID: 8331
Description: The service threw an unexpected exception which was caught at c:\Titanium\Dsa\Src\Lra\Abv_dg\Lseragent.cpp(4511)

Could this error be the cause of the client's problems? We searched the Microsoft Knowledgebase for 8331 and came up with the article: "Users do not appear in the Global Address List, users cannot connect to their Exchange mailboxes, event ID 8331 is logged, and e-mail names cannot be resolved in Exchange Server 2003" at http://support.microsoft.com/?kbid=837444. If you have a machine that has more than one logical processor, you might encounter this error because AD updates from Exchange 2003 don't work correctly. This particular Exchange Server is an HP ProLiant ML370 G3 with one 3.0GHz processor and 3GB of memory. The key, according to this article is logical processors. Newer machines with hyperthreaded processors will show up as two processors in Windows 2003 and Windows 2000, even though only one physical processor is installed in the server. To obtain the hotfix you must contact Microsoft Product Support Services (PSS). After we installed this hotfix and rebooted the server, we were able to access the new user’s mailbox.

Apparently this problem doesn't occur with all installations of Exchange 2003: Several other client organizations run Exchange 2003 with hyperthreaded processors in their servers, and these clients don't have this problem. However, this client is the only one that is running the ADC. The other clients are running Exchange 2003 in a pure Exchange 2003 or Exchange 2000 environment with AD in native mode. If you’re having problems adding new mailboxes, you might not be going crazy—just suffering from this hyperthreaded processor bug.

Tip

Microsoft released Exchange Server 2003 Service Pack 1 (SP1) on May 24, 2004. You can download the update at http://www.microsoft.com/exchange/downloads/2003/sp1.asp. It's unclear if SP1 contains the fix for the 8331 error. You must have the hotfix Q831464 installed on the Exchange 2003 server before you can apply the service pack. You can download the hotfix at http://support.microsoft.com/default.aspx?scid=kb;EN-US;Q831464. This hotfix requires a reboot, but the service pack doesn't.

SP1 contains bug fixes and enhancements such as improved spell check support in Microsoft Outlook Web Access (OWA), increased performance when using four or more processors on Exchange, improved performance when using Volume Shadow Copy Service (VSS) to back up Exchange, and the ability to move mailboxes across Administrative groups while in mixed mode. Initial reports indicate no major problems with this service pack, but be sure to test it in a lab environment before installing it in production.