The SharePoint Timer Service service terminated unexpectedly

One of my customer was getting "The SharePoint Timer Service service terminated unexpectedly" error. In our case because "Sharepoint Timer Service" was stopping on one machine when we try to deploy a solution it was not finishing the job. Also some timer jobs were in paused state for the problemmatic machine.

There may be many reasons for this problem. If this is affecting all the servers it is better to check if you change the password of the user running this service.  Also the user the timer service is running needs access right to "SystemDrive:\ProgramData\Microsoft\SharePoint\Config" directory.In our case problem was not related to user password or permissions.

Just stopping & starting "Sharepoint Timer Service" may solve the problem as well. But again this did not help in our case.

There are many blogposts mentioning that the problem may be config cache in such an issue. Step by step documentation for how to clear sharepoint configuration cache is documented in this blogpost. https://blogs.msdn.com/b/jamesway/archive/2011/05/23/sharepoint-2010-clearing-the-configuration-cache.aspx Although the blogpost is for Sharepoint 2010 it is same for 2013 as well.In our case clearing configuration cache did not help as well.

Then we realized that OWSTIMER.EXE.Config file timestamp is same as the paused timer jobs time ( SystemDrive:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\15\BIN\OWSTIMER.EXE.Config ) . Viola:) Customer has changed this file for a custom timer job in one server and malformed OWSTIMER.EXE.config file on the servers was causing the problem. After fixing the XML on the config file our deployments finished successfully.