Hi Guys ,
This is a quick one .Yesterday I faced an issue where the Software update sync started failing with the following error message:
SyncBatchMinCreationDate not set, using default 01/01/2001 00:00:00 SMS_WSUS_SYNC_MANAGER 12/04/2018 1:20:48 PM 4892 (0x131C)Sync failed: The operation has timed out. Source: Microsoft.UpdateServices.Internal.DatabaseAccess.ApiRemotingCompressionProxy.GetWebResponse SMS_WSUS_SYNC_MANAGER 12/04/2018 1:23:49 PM 7676 (0x1DFC)STATMSG: ID=6703 SEV=E LEV=M SOURCE=”SMS Server” COMP=”SMS_WSUS_SYNC_MANAGER” SYS=1636541CLWWSU01.PRATT.VISY.COM SITE=VSY PID=4108 TID=7676 GMTDATE=Thu Apr 12 03:23:49.252 2018 ISTR0=”Microsoft.UpdateServices.Internal.DatabaseAccess.ApiRemotingCompressionProxy.GetWebResponse“ ISTR1=”The operation has timed out” ISTR2=”” ISTR3=”” ISTR4=”” ISTR5=”” ISTR6=”” ISTR7=”” ISTR8=”” ISTR9=”” NUMATTRS=0 SMS_WSUS_SYNC_MANAGER 12/04/2018 1:23:49 PM 7676 (0x1DFC)Sync failed. Will retry in 60 minutes SMS_WSUS_SYNC_MANAGER 12/04/2018 1:23:49 PM 7676 (0x1DFC)Setting sync alert to active state on site ABC SMS_WSUS_SYNC_MANAGER 12/04/2018 1:23:49 PM 7676 (0x1DFC)Sync time: 0d00h06m45s SMS_WSUS_SYNC_MANAGER 12/04/2018 1:23:49 PM 7676 (0x1DFC)
So basically we need to focus on the highlighted error message . This message comes when the SUSDB becomes too full with obsolete updates. And the WSUS console will not open . Hence we do not have any choice but to do scripting .
We need to check how many obsolete updates are there in the SUSDB database. I am using SQL server to host SUSDB , but if you are using Windows Internal Database use the following query to connect to the SUSDB”:
Use server name : “\\.\pipe\MSSQL$MICROSOFT##SSEE\sql\query” to connect with SQL management studio.
Once connected run the following query against the SUSDB:
This will return a list of obsolete ID’s.
In my case it was 5000 records . But if you have less you use the following query for each one . This will remove the obsolete updates.
“exec spDeleteUpdate @localUpdateID=000000”, where 000000 is the ID
For me I removed 10 records manually and then I was able to open the WSUS console but you can continue following the article if you are still unable to open the console .
Check to see if WSUS pool is running .
Check and ensure that SQL service is also running .
Increase the WSUSPool Private MemoryLimit to unlimited by setting it to ‘0’ .
Increase the Maximum queue length from 1000 to 3000.
Reset the IIS by running IISREST command in command prompt .
Also you can Re-index the SUSDB using the following article :
After Re-indexing the database run the following PowerShell script
Once done run the WSUS clean Wizard .
Once clean-up wizard is complete run the Sync again from SCCM . It should work seamlessly .
I got the following error for some updates after running the sync :
wsyncmgr Logs: Error: The Microsoft Software License Terms have not been completely downloaded and~~cannot be accepted. Source: Microsoft.UpdateServices.Internal.BaseApi.LicenseAgreement.GetById
2. WCM Logs : Error: Failed to create assembly name object for Microsoft.UpdateServices.Administration. Error = 0x80131701.
To get around the following error just follow the following steps as they are mentioned :
1) unselect all Classifications in SUP
2) Perform wsusutil reset
3) Perform sync
4) Re add the Classifications.
Issue should be resolved. I hope this helps .