I am using Nintex Workflow 2010 Standard, version 22.214.171.124. I have a state machine workflow (expense approval) with 7 states which works great, however I have a question about how this interacts with the SharePoint timer process. Moving from the initial state in the workflow takes up to 5 minutes (the timer interval setting), however most of the other states transition almost immediately. After a fair bit of editing, and adding a 7-task flexi task action to the 5th state in the workflow, now this 5th state also seems to trigger the SharePoint timer and takes close to 5 minutes to run, while the other states continue to run immediately.
Can anyone tell me, or point me to documentation, which describes how the state machine workflow interacts with the SharePoint timer process? Is it the case that as the workflow gets larger it will trigger the timer process more often? Is there a way to recompile, or re-optimize a workflow in order to minimize the number of times it triggers the timer process?
Thanks for any info!
Here are a couple of posts you could review to get information on timers jobs and state machine.
Those are helpful links, and it does seem like the "safe looping" setting is the main culprit. What's confusing, though, is that it doesn't seem like a timer delay is added for each state change, since some work quickly and others have the delay. This seems to be consistent with some of the other comments in your links as well. I would chalk this up to a coincidence of where you end up in the timer cycle, however for me it's the same 5 states that are always fast and the same 2 states that are always slow.
in my experience i have realized that if you jump states then you get on the slow lane !
Initiate at State 1
State 1 - do some process and go to state 2 (All works fine)
State 2 - "Check condition and jump to State 3" or "do some more process and then move to State 3"
In above flow if I jump to State 3 based on condition it is always slow for me. Instead if i process something and then move to State 3 it is almost instantaneous.
not sure why it works that way
You could try turning on the Nintex Verbose logging and see if that may give you some insight into what is happening when the workflow is running. This post talks about it ( ). You could also send an inquiry to Nintex Support to see if they may be able to determine if something is awry with your workflow.