We have broken up a large workflow into several smaller workflows. We have one parent workflow that calls child workflows. We use the Nintex Start Workflow action to start the child workflows. For one of the calls we have the option "Wait for the workflow to complete before continuing" enabled. For the last few months this has been working as expected. Recently the parent workflow stalls on the Start Workflow action. The parent workflow calls the child workflow successfully, the child workflow completes successfully, but the parent workflow does not register the child workflow has completed. The OWSTIMER service is running as expected and there are no errors in the workflow history/ SharePoint logs. Any ideas?
Thanks for taking the time to respond and the useful links. After reviewing the SP version numbers were more recent than the known bugs, and confirming no unexpected behaviour with the SP Timer job we went back to the SP logs. For another instance of a workflow in error we saw the following error:
|07/25/2014 08:20:15.53||OWSTIMER.EXE||0x1678||SharePoint Foundation||Workflow Infrastructure||88xr||Unexpected||WinWF Internal Error, terminating workflow Id# e6519297-0a49-4a98-939d-09d29dfb4593||26ee8225-4e0e-416c-bf6b-0a540ad9c94e|
|07/25/2014 08:20:17.07||OWSTIMER.EXE||0x2AFC||SharePoint Foundation||Workflow Infrastructure||936l||High||Engine RunWorkflow: System.ArgumentException: Value does not fall within the expected range. at Microsoft.SharePoint.Workflow.SPWorkflowExternalDataExchangeServiceCollection.get_Item(Guid id) at Microsoft.SharePoint.Workflow.SPWinOeHostServices.Send(SPWorkflow workflow, SPWinOeWorkflow winoeworkflow, SPWorkflowEvent e) at Microsoft.SharePoint.Workflow.SPWinOeEngine.RunWorkflow(SPWorkflowHostService host, SPWorkflow workflow, Collection`1 events, TimeSpan timeOut)|
This error is on the child workflow and occurs at the time it is supposed to be completing. I suspect there is a race condition in the child workflow and will see if I can replicate the same behaviour in a test environment.
I did a quick google of the errors you provided, specifically this:
Engine RunWorkflow: System.ArgumentException: Value does not fall within the expected range. at Microsoft.SharePoint.Workflow.SPWorkflowExternalDataExchangeServiceCollection.get_Item
I found this thread which contains some possible solutions:
Here is a summary of the solutions discussed:
If that doesn't work, try the below:
If doesn't work still, maybe try contacting Support
Thanks for the continued support Lean. We did come across the same article, but unfortunately non of the ideas apply. Since this periodically does work for us, I do believe this is a race condition. I will update this when I am able to figure this out.
Were you ever able to figure this out? Our farm has run into the same issue. Start Workflow seems to run fine until someone uses the "wait until..." attribute. Then, the child workflow completes but the parent workflow never finishes; just sits at "In Progress."
Very frustrating. I reached out to Nintex support, but they only directed me here.
Hi Arun, Yes we checked the SP logs as indicated above. We got this to work by not using "Wait for the workflow to complete before continuing" option and including a "wait until..." action afterwards. This seemed to correct the workflow in this scenario.
We have seen the same behaviour Danaye experienced above for other workflows where the "wait until..." never gets triggered and nothing is logged in SP logs, but in this particular case it seems to be working fine.