There\'s a hole in WMI bucket, dear Liza….

There\’s a hole in WMI bucket, dear Liza….

There\’s hods of information about this one on t\’Internet. Really. Loads…


Situation:

You\’re happily running Windows 2008 R2, perhaps with SQLServer on there as well (but it\’s not compulsory, you know).


Your monitoring software, such as Microsoft\’s SCOM, happily raises fault tickets for you when something is awry.


It looks a bit like this:

Microsoft.SystemCenter.HealthService:Workflow Runtime: Failed to run a WMI query:Object enumeration failed Query:  SELECT StartMode, State FROM …


Helpful ? Not really. There are several reasons that this error may occur, but a common problem with WMI is that it\’s a bit leaky under Windows 2008 R2. That leak can eventually kill your server as one WMI process can consume all your lovely memory that you were using for Anti-virus scans / SQL Server / whatever you do that needs memory.


Those helpful chaps at Microsoft have admitted that there IS a flaw in WMI when repeated queries are run frequently. And SCOM does exactly that – queries the bejeezus out of your server\’s WMI when there\’s nothing to report. What would really be useful is if SCOM would raise a ticket if a WMIPrvSe service starts running off with all your resources, but that\’s just crazy talk…. 🙂


Again, helpfully, there\’s a hotfix to correct this problem, detailed at http://support.microsoft.com/kb/981314.


There\’s even a hope that it might be fixed permanently in Windows 2008 R2 SP1, but I\’m not holding my breath for that one.


Anywho, test this out and apply the hotfix if you notice WMI is running away with memory (I suggest that > 250MB is probably a bit excessive).


Or, if uptime isn\’t an issue for you, just reboot your servers on a regular basis, just in case. <–JOKE !!


Back soon…