I have a process with an inclusive gateway inside a parallell gateway. At the end of the parallel, the process can go back to the start (please see attachment).
When the conditions of all outgoing sequence flows from the inclusive gateway are true all works fine.
When just a condition is true (i.e. variable ‘type’ is equal to ‘2’), the process gets stuck at the join inclusive gateway.
What am I doing wrong?
I’m using the 7.9.0 version, I would be grateful for any hints.
@thorben: I might have encountered similar problem, by nesting (and even not yet looping) the inclusive gateways. I have two inclusive gateways nested one within the other and it seems stuck waiting for the merge at a wrong place (to me; of course it might be doing something wrong).
I enclose the bpmn process and the screenshot where it is stuck with variables. Will you want/need a testcase as well, please?
Although I had to redesign the diagram without the inclusive gateways, I found that the GET /task do not show any tasks if they are stuck around the gateways, they might be in the job queue GET /job
Thanks for the test, I was able to track down the root problem. In your example, the merging inclusive gateway waits for at least one the tokens at the merging parallel gateway to arrive via the second incoming sequence flow of the inclusive gateway. While this is generally possible, it is not correct according to the spec. I raised bug issue https://app.camunda.com/jira/browse/CAM-9367.
General advice: If you can avoid the inclusive gateway, do it.
A task in Camunda is an instance of a user task. It is expected that there is no task when there is a token waiting at an inclusive gateway. The best API to inspect the state of a process instance is the activity instance API, see Get Activity Instance | docs.camunda.org.