ISSUEWhen trying to access a workflow task for approval, the following error is produced :
This task is currently locked by a running workflow and cannot be edited
ERROR CODESorry, something went wrong This task is currently locked by a running workflow and cannot be edited
The first step to isolate the issue is to create a new task list on the site and configure the workflow to use it. Any customization that were made to the original task list should not be made to the new task list. If the new task list eliminates the issue, then the cause can be attributed to the original task list or a change that was made to it.
"This task is currently locked by a running workflow and cannot be edited" is a common message which is seen when an error occurs while the SharePoint workflow engine is processing a task item associated with a workflow.
When a workflow processes a task normally, the following sequence of events is expected to occur:
- The process begins.
- The workflow places a ‘lock’ on the task so nothing else can change the values while the workflow is processing.
- The workflow processes the task.
- The lock is released when the task processing is finished.
When the message is encountered, it usually indicates that an error occurred between step 2 and 4. As a result, the lock is never released.
Therefore, the ‘task locked’ message is not an error itself, rather a symptom of another error - the ‘task locked’ message does not indicate what went wrong. In most cases, once this message is encountered, the workflow cannot be made to continue and must be terminated and started again.
The following is a guide that can help troubleshoot the cause of these messages. Some initial observations to narrow down the potential causes are:
Is the error consistent or intermittent?
When the error is consistent, it will happen every time the workflow is run. When it is intermittent, it may happen regularly, but not every time.
Does the error occur the first time the user tries to respond to a task, or do they respond and notice the workflow does not continue, and when they respond again the error occurs?
If the message is present when the user first responds to the task, the issue would have occurred when the task was created. Otherwise, it would have occurred when the user attempted to respond to the task.
Modifying the task list
A cause of this error appearing consistently the first time a user tries to respond to a task is a modification to the default task list schema. For example, changing the ‘Assigned to’ field in a task list to be a multiple selection will cause the behaviour.
Parallel simultaneous responses
A cause of this error appearing inconsistently is multiple users responding to tasks in parallel at the same time. In this scenario, one task will complete correctly and the other will not process. When the user tries again, the ‘task locked’ message will display.
Additional processing on the task
A cause of this error appearing consistently and inconsistently is having an additional system running on the items in the task list. Some examples include; a workflow running on the task list, an event receiver running on the task list or another automated process querying and updating workflow tasks.
Note: This Microsoft help article (http://office.microsoft.com/en-us/sharepointdesigner/HA102376561033.aspx#5) explains creating a workflow that runs on the task list to update a field on the task. Our experience shows that this causes the ‘Task Locked’ issues when the ‘parent’ workflow is generating more than one task at once.
Isolated system error
If the error is a rare event, or a ‘one off’ event, then an isolated system error may have occurred.
For example, if there is a database connectivity issue while the workflow is processing the task response, the task will lock. In this case, the user will respond to a task but the workflow will not continue. When they respond again, the ‘task locked’ message will display. In this case, there will be an error in the SharePoint ULS Logs at the time that the user originally responded.
Temporary delay while workflow processes
If the workflow is taking a long time to process after a user submits a task, they may notice and try to respond to the task again. They will see the task locked error, but after a number of attempts (or after waiting some time) the task response page eventually indicates the task has been responded to. In this case, nothing actually went wrong, and the error message gives an accurate indication of what is happening – the workflow temporarily locked the task while it was processing. This scenario may occur in a very large workflow, or after the SharePoint application pool has just started.
Modifying the task via a web service with an invalid url
If the Nintex Workflow web service is used to respond to or delegate a task, the site context part of the url must be a valid alternative access mapping url. For example, if you access the web service via the IP address of the SharePoint server, and the IP address is not a valid AAM, the task can become locked.
The workflow has become stuck without any apparent errors
This behaviour can occur as a result of a bug in the SharePoint 2010 workflow engine. If you do not have the August 2010 Cumulative Update (or later) for SharePoint, and your workflow uses delays, "Flexi-task", State machine", "Task Reminder" actions or variables, you could be affected. Check the SharePoint 2010 Updates site here: http://technet.microsoft.com/en-us/sharepoint/ff800847. The October CU is recommendedhttp://support.microsoft.com/kb/2553031. The fix is described as "Consider the following scenario. You add a Delay activity to a workflow. Then, you set the duration for the Delay activity. You deploy the workflow in SharePoint Foundation 2010. In this scenario, the workflow is not resumed after the duration of the Delay activity".
If you find this is occurring in your environment, install the October CU, terminate all the running workflows affected and run them afresh.
The first step to isolate the issue is to create a new task list on the site and configure the workflow to use it. Any customizations that were made to the original task list should not be made to the new task list. If the new task list eliminates the issue, then the cause can be attributed to the original task list or a change that was made to it.
To change the task list that the workflow uses:
1. In the Workflow Designer select Settings.
2. Towards the bottom of the Workflow Options section, select the Task List drop down menu to configure the task list as required.
If any of the scenarios above do not help, check the SharePoint logs for any messages with a category of ‘Workflow Infrastructure’.
The sources of these issues are the underlying SharePoint workflow engine.