Summary:
The SMS extractor fails to fetch data from the SCCM repository stating that the WMI quota has been reached.
This can be validated by logging in to the site id using wbemtest and attempting to run the query used by SMS extractor to get computer information.
-------------
The following lines are seen in the SMS logs:
SMSEX |SmsQuery::query_|SmsQuery
::query_with|000000|ERROR | Return code in hex = 8004106c
SMSEX |SmsQuery::query_|SmsQuery
::query_with|000000|ERROR | Error enumerating through query result.
Environment:
CA Client Automation - All Versions
Instructions:
The user can increase the 'memory per host' in SCCM by using the following script (In this example script, the value has been increased to 1GB).
- Create a text file with the following content and save it as WMI_Quota.vbs
-----------
Dim locator: Set locator = CreateObject("WbemScripting.SWbemLocator")
Dim wmi: Set wmi = locator.ConnectServer("", "root")
Dim quota: Set quota = wmi.Get("__providerhostquotaconfiguration=@")
quota.MemoryPerHost = 1024*1024*1024
quota.put_()
Wscript.Echo(quota.MemoryPerHost)
------------
Steps to follow:
- Copy the vbs script to the ..\Windows\SysWOW64 folder
- Execute the following from an Administrator command prompt:
>>cd <windows path>\SysWOW64
>>cscript WMI_Quota.vbs
- Verify that 1073741824 is displayed in the command window.
+++++
In case the user does not have permissions to alter the WMI configuration, the workaround is to create several 'collections' in the SCCM environment and to configure multiple SMS extract tasks - each catering to one such collection.