XADM: Spinning Thread in Mad.exe During Routing Recalculation

ID: Q185693


The information in this article applies to:
  • Microsoft Exchange Server, versions 5.0 SP2, 5.5, 5.5 SP1

IMPORTANT: This article contains information about editing the registry. Before you edit the registry, make sure you understand how to restore it if a problem occurs. For information about how to do this, view the "Restoring the Registry" Help topic in Regedit.exe or the "Restoring a Registry Key" Help topic in Regedt32.exe.

SYMPTOMS

The Exchange System Attendant process (Mad.exe) shows sustained, high CPU utilization in a Performance Monitor chart view. Viewing the individual threads of Mad.exe in Perfmon, you see that a single thread is maintaining high utilization. Server performance may appear sluggish (particularly on single processor systems).

Additionally, the Exchsrvr\Mtadata\Gwartx.mta files likely show a date and time stamp corresponding to the last restart time of the message transfer agent (MTA). This time stamp will not be updated over a 24-hour time period, and the following event may be logged in the Event Viewer:

Event: 5000
Source: MSExchangeSA
Type: Error
Category: General
Recalculation of the routing table is complete. Result: The routing table is being recalculated.


CAUSE

The routing topology of the Exchange organization exceeds the practical limitations of the "aggressive pruning" algorithm introduced with MTA enhancements that were included in 5.5 and 5.0 SP2 (see Microsoft Knowledge Base article Q176518, XCON: Recalculating Routing Does Not Remove Previously Deleted Routes). Routing recalculation can take hours, days, or even weeks longer than it did using the previous algorithm.


RESOLUTION

To resolve this problem, obtain the latest service pack for Exchange Server version 5.5. For more information, please see the following article in the Microsoft Knowledge Base:

Q191014 XGEN: How to Obtain the Latest Exchange Server 5.5 Service Pack

Post-5.5 SP1 and 5.0 SP2 versions of the MTA have been compiled that allow the administrator to use a registry value to toggle between using the old algorithm and using the new "extra checking\aggressive pruning" algorithm.

The default action of these MTAs, without the registry value set, is to engage the "extra checking" enhancement.

WARNING: Using Registry Editor incorrectly can cause serious problems that may require you to reinstall your operating system. Microsoft cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk.

For information about how to edit the registry, view the "Changing Keys and Values" Help topic in Registry Editor (Regedit.exe) or the "Add and Delete Information in the Registry" and "Edit Registry Data" Help topics in Regedt32.exe. Note that you should back up the registry before you edit it. If you are running Windows NT, you should also update your Emergency Repair Disk (ERD).
The fix is a replacement of the Exchange MTA and requires that the following Windows NT registry value be added:
HKLM\System\CurrentControlSet\Services\MSExchangeMTA\Parameters RID Consistency Checking : REG_DWORD : 0
To add this registry value:
  1. Start Registry Editor (Regedt32.exe).


  2. Locate the following key in the registry:


  3. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services \MSExchangeMTA\Parameters
  4. On the Edit menu, click Add Value and use the following entry:
    Value Name: RID Consistency Checking
    Data Type: REG_DWORD
    Value: 0
    NOTE: Spaces and capitalization are important. Setting the registry value to 0 (zero) disables the extra route checking.


  5. Quit Registry Editor.


  6. Restart all Exchange services.


NOTE: Routing recalulation occurs on only one server in the site. To determine the current Routing Calculation Server, open the organization\site\Configuration\Site Addressing property page and look at the Routing Calculation Server list box. It is recommended that all servers be upgraded with the new MTA and registry setting because the Routing Calculation Server can be easily changed in the Microsoft Exchange Administrator program. Although routing recalculation is performed by the MTA component, Ems_rid.dll, this .dll file executes under the system attendant process.


STATUS

Microsoft has confirmed this to be a problem in Exchange versions 5.0 SP2, 5.5, and 5.5 SP1. This problem was first corrected in Exchange Server 5.5 Service Pack 2.


MORE INFORMATION

Article Q176518, explains the purpose of the "aggressive pruning" algorithm. The purpose is to hasten the removal of deleted routes from the site's routing recalculation server, thus removing these routes from the site.

The original algorithm basically performs the following:

Searches all local Connectors and starts off with an empty GWART. For each Connector found, adds the address spaces for the Connectors. If Connected Sites is set, imports in the remote site's GWART. During this import, removes duplicated addresses and circular routes.

The "extra checking":

Checks each imported route from the remote GWART. For every hop on the route, imports the GWART for the site corresponding to that hop, and verifies that the hop exists in that GWART also.

The time required for extra checking factors exponentially to the number of sites and routes defined. In very large topologies where there are many routes defined, the time taken to perform the extra checking can be days or possibly even weeks.

Additional query words:

Keywords : exc55sp2fix XADM exc55 exc5sp2 exc55sp1
Version : winnt:5.0 SP2,5.5,5.5 SP1
Platform : winnt
Issue type : kbbug


Last Reviewed: July 19, 1999
© 2000 Microsoft Corporation. All rights reserved. Terms of Use.