We're running Exchange Server 5.5 (build 2650.24) on Windows NT Server 4.0. Store.exe is using a large amount of memory, and we must continually stop and start the process. We found information about resolving this problem in earlier Exchange versions and service packs, but not for our particular configuration. Can you help?
In general, you need to consider two separate issues when you're watching store.exe's RAM usage: how much RAM the executable uses and whether it releases that RAM when needed. The Dynamic Buffer Allocation (DBA) code built into Exchange 2000 Server and Exchange 5.5 is supposed to use as much RAM as it can to efficiently cache database and directory information. However, the DBA is designed to return RAM when the system needs it. The DBA watches the rate at which virtual memory paging occurs so that it can detect demands for more physical RAM and give up some of its hoard. During usual operations, you can watch Performance Monitor's virtual memory counters to see this process in action.
Unfortunately, you occasionally run into memory leaks, in which the Information Store (IS) or other Exchange components allocate RAM, use it, then forget to free it. Most of these leaks are small, but even a leak that consumes only 1KB per hour will eventually suck up all the RAM on a server. Stopping the offending process or rebooting the machine brings everything back to normal, at least until the conditions that permit the leak recur.
If you suspect that your server has a memory leak, call Microsoft Product Support Services (PSS). If a known bug or flaw is causing the leak, PSS will give you a free hotfix. If Support Professionals aren't familiar with the cause, they'll work with you to identify the leak source, then they'll give you a fix for the problem.