The DSAccess configuration cache is full
Topic Last Modified: 2010-05-05
The Microsoft® Exchange Server Analyzer Tool queries the Win32_PerfRawData_MSExchangeDSAccess_MSExchangeDSAccessCaches Microsoft Windows® Management Instrumentation (WMI) class to determine the current value for TotalEntriesMemoryConfigurationData. If the Exchange Server Analyzer Tool finds that the value for TotalEntriesMemoryConfigurationData equals the total size of the Directory Service Access (DSAccess) configuration cache(MaxMemoryConfig), a warning is displayed.
DSAccess is an internal component in Exchange 2000 Server and Exchange Server 2003 that controls how all Exchange components access the Active Directory® directory service. The primary function of DSAccess is to maintain information about various directory-related events and operations. For example, DSAccess discovers the Active Directory topology and detects if domain controllers and global catalog servers are available and responding to queries. In addition, all directory queries made by internal Exchange components such as the Microsoft Exchange store are routed through DSAccess, such as recipient resolution, configuration setting lookups, and others. As part of its job, DSAccess maintains an in-memory cache of the results of some of these queries so that if the same information is requested twice, it can be retrieved from the DSAccess cache instead of through another Lightweight Directory Access Protocol (LDAP) query against Active Directory.
Because the default setting maximum size for the DSAccess configuration cache was reduced from a value of 25 megabytes (MB) in Exchange 2000 Server to a value of 5 MB in Exchange Server 2003, this warning message can be generated on either version of Exchange. Regardless of what version of Exchange generates this warning message, the problem should be corrected as soon as possible.
The MaxMemoryConfig value is often used in conjunction with the MaxMemoryUser value, which controls the maximum amount of memory that user data objects in the DSAccess cache are allowed to consume. If you edit or remove the MaxMemoryConfig value as described in the procedure that follows, you should similarly edit or remove the MaxMemoryUser value as described in DSAccess user cache value is non-default.
|This article contains information about editing the registry. Before you edit the registry, make sure you understand how to restore the registry if a problem occurs. For information about how to restore the registry, view the "Restore the Registry" Help topic in Regedit.exe or Regedt32.exe.|
Open a registry editor, such as Regedit.exe or Regedt32.exe.
Navigate to: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\MSExchangeDSAccess\Instance0
Increase the value for MaxMemoryConfig. If the Instance0 key or the MaxMemoryConfig DWORD value does not exist, you can manually create it. The value data for the MaxMemoryConfig registry entry is in kilobytes (KB); therefore a decimal entry of 15000 equals 15 MB. If the value exists, increase it by 10 percent. If the value does not exist, an initial starting point of 10 MB is recommended.
Close the registry editor and then restart Microsoft Exchange System Attendant for the change to take effect.
Before you edit the registry, and for information about how to edit the registry, see the Microsoft Knowledge Base article 256986, "Description of the Microsoft Windows Registry" (http://go.microsoft.com/fwlink/?linkid=3052&kbid=256986).