I was facing this issue on the production server. Restart was ruled out by network admin so here are the steps that resolved my issue:
1. 2 Web Front End Servers: WFE1 (primary with Central admin) and WFE2 (secondary). Clustered database environment on SAN.
2. Select * from TimerLock – gives you one record and tells which server is actually responsible for relaying emails. In my case, it was WFE2.
3. WFE2 timer service wasn’t working fine, so I stopped the timer service on WFE2.
4. Timeout to release the lock is 20 minutes – i read it but i need to find out where exactly I can see this value Or is there a way to reset it.
5. After 20 minutes, TimerLock table record value was reset to WFE1 which eventually resolved my issues of not relaying emails.
Assumptions here –
Alerts are enabled. How to check (from command prompt)
1. Go to: C:\Program Files\Comman Files\Microsoft Shared\Web Server Extensions\12\bin
2. stsadm -o getproperty -pn alerts-enabled -url http://portalwebsite/
2a. Answer should be ‘Yes’.
3. stsadm -o getproperty -pn job-immediate-alerts -url http://portalwebsite/
3a. Answer should be ‘Every 5 minutes…’
4. Above commands are just for confirmation to make sure that alerts are enabled.
5. Assuming the Timer Service domain user account has appropriate priviledges and access to website and content database.
Hope this may help somebody.