SharePoint Timer Job Servers
Recently, while helping out a client, they asked a question about timer jobs running on their Farm.
The client in question has a large farm with multiple servers, web applications and content databases and was concerned about multiple servers appearing to run the same timer jobs on the same web application at different times.
If you have a web application with multiple content databases, or a farm with multiple servers it will be completely normal to see the servers running timer jobs changing, you can try to override this behaviour by setting a preferred timer server in Central Administration for a content database even thought this setting doesn’t even seem to be mentioned in TechNet.
As each content database can have a different server assigned to run its timer jobs on of the ways to determine this is to have a look in SQL at contentDB in the TimerLock table
In SharePoint 2007 the actual timer server name was in the contentDB, but in 2010 this was changed to a GUID that represented the object, so you have to join the contentDB to the ConfigDB, the following SQL allows you tell which server currently has the timer lock for a contentDB.
select a.lockedby, b.name
from <contentdb_Name>.dbo.TimerLock a inner join SharePoint_Config.dbo.Objects b
on a.lockedby = b.Id
Happy SharePointing in 2013
Follow @NeilKing41
It will be ok for the jobs to run on different servers at different times, but is it ever going to run multiple times at the same time on different servers? And how about custom timer jobs, is it the same behavior?
If you have multiple content databases and serversthen it’s quite possible that 2 copies of the same job could be running at the some time against multiple contentDB’s, and they will of course be running on different servers as only 1 server can hold a database lock at anytime.
The behaviour for custom jobs should be the same, but may depend on the scope of your timer job.