I've got a simple workflow that uses a single Request Data action to get some information from project managers, there are no escalations or reminders setup. I use a site workflow to update a column in this list that triggers the workflow on each item (an easy way to trigger workflows on multiple items). A single workflow starts for each item, however the Request Data action inside the workflow has created 4 tasks for each item, therefore sending 4 emails for the same thing to each project manager. Also, only the last task in that sequence actually works, the others give an error when accessed:
and when I look in the ULS logs, it says "Cannot find a corresponding human workflow task ID for this task". But if I go to the list they are there but inaccessible.
I have seen this document Workflow performance improvement and load reduction which does mention this error, but it says that it happens when the workflow is too big. This workflow is 187kb.
Solved! Go to Solution.
Updating just one column called triggerWorkflow, setting it to 1, then the workflow on the item has a conditional start configured for when the item is modified and the triggerWorkflow field = 1.
When we dug further into the logs we found that there was a SQL timeout that happened, 4 times as it happens. So it seems that is the cause. When I talked to an admin he said that there was an incremental crawl running at that time which may have impacted the workflow running. We will try running the site workflow again at a time that doesn't have anything else happening.
True, there are some external dependencies, sometimes the WF act weird.
Just out of curiosity, why do you use triggerworkflow field. Do you have other workflow running on the same list.
I used the method described to start the workflow because I needed an easy way to start the list workflow on all items. One of the first steps in the list workflow is to send the assigned person a link to their item and ask them to update the information in it. It was easier to set up this way rather than having to manually trigger the workflow on each individual item.