Troubleshooting “Workflow Timer Job Failed” in SharePoint
The “Workflow Timer Job Failed” error occurs when the timer job responsible for executing workflows in SharePoint fails. The Workflow Timer Job is crucial for running workflows at scheduled intervals, executing delayed actions, and processing workflow tasks.
This issue is common in SharePoint On-Premises (2010/2013/2016/2019) and can be caused by service failures, permission issues, workflow corruption, or database problems. Below is a detailed step-by-step guide to troubleshoot and resolve the issue.
Step 1: Verify the Workflow Timer Job in Central Administration (For On-Premises Users)
If you are using SharePoint Server (On-Premises), follow these steps to check the timer job status:
- Open Central Administration.
- Click on Monitoring.
- Under Timer Jobs, select Review Job Definitions.
- Locate the Workflow Timer Job.
- Check if the job is:
- Paused
- Stuck in an error state
- Running as expected
If the job is stuck, proceed to Step 2.
Step 2: Restart the SharePoint Timer Service
The SharePoint Timer Service (SPTimerV4) is responsible for executing timer jobs. Restarting it can resolve stuck workflows.
For SharePoint On-Premises:
- Open Services (services.msc).
- Locate SharePoint Timer Service (SPTimerV4).
- Right-click and select Restart.
- Alternatively, restart it using PowerShell:
Restart-Service SPTimerV4
- Wait a few minutes and check if workflows start running.
Step 3: Restart the Workflow Manager Service
If restarting the timer service does not fix the issue, try restarting the Workflow Manager:
- Open Services (services.msc).
- Locate Workflow Manager Backend.
- Right-click and select Restart.
- If using PowerShell, run:
Restart-Service WorkflowServiceBackend
Once restarted, test the workflow again.
Step 4: Run the Timer Job Manually
If the timer job is stuck, manually triggering it can help:
- Open Central Administration.
- Click on Monitoring.
- Under Timer Jobs, select Job Definitions.
- Find Workflow Timer Job and click on it.
- Click Run Now.
After running the job, check if workflows resume execution.
Step 5: Check SharePoint Timer Job Logs
If workflows are still failing, check SharePoint’s Unified Logging System (ULS) logs:
- Open SharePoint Management Shell as Administrator.
- Run the following command to filter logs for workflow errors:
Get-SPLogEvent | Where-Object { $_.Message -like "*workflow*" }
- Look for messages related to:
- Timer job failures
- Workflow execution errors
- Database connection issues
If logs indicate database problems, proceed to Step 6.
Step 6: Check SQL Server and Workflow Databases
Timer jobs rely on SQL Server to store and retrieve workflow data. If SQL Server is not running or the workflow database is corrupted, workflows will fail.
1. Verify SQL Server Services
- Open Services (services.msc).
- Ensure that the following services are running:
- SQL Server (MSSQLSERVER)
- SQL Server Agent
- SQL Server Reporting Services (if applicable)
If any service is stopped, restart it.
2. Check Database Connectivity
- Open SQL Server Management Studio (SSMS).
- Try connecting to the SharePoint Configuration Database.
- Run the following query to check for database errors:
SELECT * FROM EventLog WHERE EventType = 'Workflow'
- If there are database issues, run:
Test-SPContentDatabase -Name WSS_Content
If database corruption is detected, restore from a backup or contact your database administrator.
Step 7: Verify Farm Account Permissions
The SharePoint Timer Service and Workflow Manager require correct permissions to function.
- Open Central Administration.
- Go to Security > Configure Service Accounts.
- Ensure the Farm Account has Full Control on the following:
- SharePoint Timer Service
- SQL Server Databases
- SharePoint Workflow Manager
Step 8: Clear the Timer Job Cache
Corrupt timer job cache files can cause workflow failures. Clearing the cache may resolve the issue.
- Stop the Timer Service:
Stop-Service SPTimerV4
- Delete Cache Files:
- Navigate to:
C:\ProgramData\Microsoft\SharePoint\Config
- Delete all XML files except the cache.ini file.
- Open cache.ini, set its value to 1, and save it.
- Navigate to:
- Restart the Timer Service:
Start-Service SPTimerV4
After this, check if the timer job runs successfully.
Step 9: Re-Register the Workflow Manager (For SharePoint 2013+ Users)
If using SharePoint 2013/2016/2019 workflows, re-registering the Workflow Manager can resolve timer job failures.
- Open SharePoint Management Shell as Administrator.
- Run the following command to re-register the Workflow Manager:
Register-SPWorkflowService -SPSite "https://yoursiteurl" -WorkflowHostUri "http://workflowserver:12291"
- Restart IIS:
iisreset
Test the workflow again to see if it executes properly.
Step 10: Recreate the Workflow (If All Else Fails)
If the timer job continues to fail, try recreating the workflow in SharePoint Designer or Power Automate.
- Open SharePoint Designer.
- Navigate to Workflows.
- Backup the existing workflow by exporting it.
- Create a new workflow with the same logic.
- Publish the workflow and test it.