CorvettePower.COM
23Feb/04

Exchange 2003 on Windows 2003 Domain Controller shuts down slowly

My Exchange 2003 Server which is running on Windows 2003, after the install of Exchange now takes about 10+ minutes to shut down.


It appears that the lsass service shuts down before system attendant


You can try making system attendant dependant on the lsass service


Google article about the problem

Google article with MS reply on a workaround

This batch file put in the policy for the computers shutdown script, may solve the problem as well

net stop "Microsoft Exchange MTA Stacks"
net stop "Microsoft Exchange Information Store"
net stop "Microsoft Exchange System Attendant"


Q. After I install Microsoft Exchange Server 2003 on my domain controller (DC), why does the DC take so long to shut down?

A. Exchange relies heavily on Active Directory (AD) and uses several services to optimize AD communication. One of these services is the DSAccess service, which provides a cache of information from AD to various Exchange components, including the Information Store (IS), the Message Transfer Agent (MTA), and any other component that requires AD information. By recovering cached AD information, Exchange requires fewer direct queries to the DCs.

When you shut down a Windows Server 2003 DC, its services stop very quickly--faster than Windows 2000 services shut down, which is why this problem appears to be new to Windows 2003. An example of one such affected service is the Local Security Authority Subsystem (LSASS).

DSAccess uses this service heavily. Because this service stops before DSAccess can stop cleanly, the DSAccess service goes through several timeouts before the system can shut down (these timeouts are set to 10 minutes by default). Other Exchange services have a similar problem, causing even longer delays.

To resolve these delays, you can create a script that you manually run before stopping your computer, and the script will stop each Exchange service cleanly because AD is still running. Sample content for the script might include



net stop msexchangeis
net stop msexchangemta
net stop msexchangemgmt
net stop msexchangesa
net stop resvc
net stop smtpsvc
net stop w3svc
net stop httpfilter
net stop http
net stop iisadmin
net stop winhttpautoproxysvc

You can also add the Shutdown command to the end of your script to automate the whole shutdown and restart process.

Another approach is to change the amount of time Windows 2003 waits before killing a service that's not responding. To adjust this timeout period, perform the following steps:



  1. Start a registry editor (e.g., regedit.exe).

  2. Navigate to the

    HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControl registry subkey.

  3. Double-click WaitToKillServiceTimeout.

  4. Change the value from the default of 600000 (10 minutes) to something else (e.g., 20000 for 20 seconds), then click OK.

  5. Close the registry editor.

Be aware that changing this registry value will change the wait period for all services to stop, so setting this value too low might cause problems with services if the OS is killing them before they can cleanly finish.

Trackbacks are disabled.