Clearing Timer Services
Posted by mundeep on August 13, 2012
The following error appears in (a) Event Viewer & (b) Health Analyzer as a critical item:
The SharePoint Health Analyzer detected an error. One or more services have started or stopped unexpectedly.
The following services are managed by SharePoint, but their running state does not match what SharePoint expects: SPAdminV4. This can happen if a service crashes or if an administrator starts or stops a service using a non-SharePoint interface. If SharePoint-managed services do not match their expected running state, SharePoint will be unable to correctly distribute work to the service.
SharePoint was unable to automatically repair this error.
To stop or start a service managed by SharePoint, use the SharePoint service management interface in the SharePoint Central Administration Site. If a service has crashed, restart the service manually on the affected servers by running “net start [service name]” from a command prompt. For more information about this rule, see “http://go.microsoft.com/fwlink/?LinkID=142683”.
I checked the server to ensure the SharePoint Timer Service was running (even restarted it) but that didn’t help so I tried to run the SharePoint Configuration Wizard on the box that CA could not see the Timer Service on. It gave me the following error:
08/13/2012 14:57:46 11 ERR Exception: Microsoft.SharePoint.Administration.SPUpdatedConcurrencyException: An update conflict has occurred, and you must re-try this action. The object AnalysisServicesDiagnostics was updated by DOMAIN\SP2010SetupUser, in the psconfigui (1608) process, on machine CENTRALADMINSERVERNAME. View the tracing log for more information about the conflict.
at Microsoft.SharePoint.Administration.SPConfigurationDatabase.StoreObject(SPPersistedObject obj, Boolean storeClassIfNecessary, Boolean ensure)
at Microsoft.SharePoint.Administration.SPConfigurationDatabase.Microsoft.SharePoint.Administration.ISPPersistedStoreProvider.PutObject(SPPersistedObject persistedObject, Boolean ensure)
at Microsoft.SharePoint.PostSetupConfiguration.ServicesTask.InstallServiceInConfigDB(Boolean provisionTheServiceToo, String serviceRegistryKeyName)
at Microsoft.SharePoint.PostSetupConfiguration.ServicesTask.InstallServices(Boolean provisionTheServicesToo)
Apparently this is caused by the timer job cache being in an inconsistent state (in my
case due to server restore from a snapshot).
Clearing the timer job cache solved the issue.
Summary of the steps to clear the timer job: