You might see alerts, or critical state health of your RMS in your environment, caused by the handle count being very high on the HealthService.
Typically – you will see this on an RMS that is running on an x64 operating system, especially if you have a large amount of RAM.
We change state to critical when the handle count exceeds 10,000 by default. Customers have been seeing handle counts reported in excess of 50,000 handles, however.
This is caused by the way we clean up used handles, in a process known as garbage collection. When there is no memory pressure (as seen in x64 OS by design) with a healthy amount of RAM present, the garbage collection process does not clean up used handles. Previously – we recommended customers affected by this *specific* issue, to override this value to 50,000 handles or more.
A hotfix has been released which addresses the condition – it is a fix for .NET 2.0 (sp2).
What is misleading – is that this KB article appears to only show that the hotfix is for Windows Server 2003, and not Windows Server 2008. The KB is in error, because when you request the hotfix – you can choose Windows 2008 version of the hotfix.
On the KB article – click the link to request the hotfix:
Then click “Show hotfixes for all platforms and languages”:
This will expose all the versions available – from here you can download the Windows Server 2008 version of this fix for x64:
This should resolve the high handle count errors on the RMS.
***A critical note on applying this hotfix and errors you might see.
Several people have complained that when they attempted to apply the fix – it would not apply and the installer gave a message that the “update does not apply to this system”. It must be noted in the KB article – that this hotfix applies to and requires .NET 2.0 SP2. Many users will only have .NET 3.0 RTM installed, or .NET 2.0 RTM, and will see this error. You must apply .NET 2.0SP2 FIRST if you don't have it – THEN apply this hotfix.
One of the best ways to update .net is to apply the latest updates available. At the time of this blog edit – it is .NET 3.5 SP1, which will also update .net 2.0 to SP2.
There are several critical security updates to the .NET Framework on a regular basis, and you should keep this framework up to date on your OpsMgr servers. Windows Update is a great way to do this.
***Critical Note #2
Another requirement for this hotfix – is to have Service Pack 2 for Windows Server 2008. If you aren't on the latest Service Pack – this update will not apply. If you see the hotfix package properties:
ApplicabilityInfo="Windows Vista SP2;Windows Server Core SP2;Windows Server 2008 SP2;"
Applies to="Windows 6.0"
Installer Engine="Component Based Servicing - WUSA.exe"
KB Article Number="968760"
Product Name="Windows 6.0"