I have a workflow with a state machine governing an approval process. As it was becoming too large I split it out into separate workflows and call those child workflows from within the branches of the state machine. I have 4 branches with child workflows, 3 of which behave perfectly. The 4th however is behaving very strangely.
When the workflow runs, initiated by the start workflow action, the single flexi task that is contained within it is created 4 times! I have added logging before the task and that too is shown 4 times. There are no loops in my workflow, it's a simple linear process, do some stuff before the task, create the task and do some stuff afterwards. The start workflow action is configured to wait until the workflow finishes before progressing and not to start if already running.
What I have also observed is that if I run the child workflow manually it behaves as expected, a single task is created...it is only when started with Start a Workflow that it behaves this way. Note also that when started with Start a Workflow action only a single instance of the child workflow is shown as running.
Of the 4 tasks that are created, only the only with the highest ID can be opened, the others give 'Sorry, something went wrong'.
Can anyone suggest what's going on here?
I have tried replacing the Start a Workflow action but the result is the same.