I have the model as below:
<urn:process-definition name="1" xmlns:urn="urn:jbpm.org:jpdl-3.2">
<urn:start-state>
<urn:transition to="1"/>
</urn:start-state>
<urn:node name="1">
<urn:action
class="com.sra.sraserver.workflow.api.driver.runtime.workflow.jbpm.EmbeddedActionHandler"/>
<urn:transition to="2"/>
</urn:node>
<urn:node name="2">
<urn:action
class="com.sra.sraserver.workflow.api.driver.runtime.workflow.jbpm.EmbeddedActionHandler"/>
<urn:transition to="2_fork"/>
</urn:node>
<urn:fork name="2_fork">
<urn:transition to="3"/>
<urn:transition to="4"/>
</urn:fork>
<urn:node name="3">
<urn:action
class="com.sra.sraserver.workflow.api.driver.runtime.workflow.jbpm.EmbeddedActionHandler"/>
<urn:transition to="2_join"/>
</urn:node>
<urn:node name="4">
<urn:action
class="com.sra.sraserver.workflow.api.driver.runtime.workflow.jbpm.EmbeddedActionHandler"/>
<urn:transition to="2_join"/>
</urn:node>
<urn:join name="2_join">
<urn:transition to="5"/>
</urn:join>
<urn:node name="5">
<urn:action
class="com.sra.sraserver.workflow.api.driver.runtime.workflow.jbpm.EmbeddedActionHandler"/>
<urn:transition to="6"/>
</urn:node>
<urn:node name="6">
<urn:action
class="com.sra.sraserver.workflow.api.driver.runtime.workflow.jbpm.EmbeddedActionHandler"/>
<urn:transition to="end"/>
</urn:node>
<urn:end-state name="end"/>
</urn:process-definition>
...The action handler simply calls executionContext.getToken().signal().
The problem here is that when I execute this model, the following nodes are hit (in order):
1, 2, 2_fork, 3, 2_join, 5, 6, end
for some reason, it completely skips the 2nd fork transition, node 4.
Can anyone tell why this would be happening? did I miss something in the process definition?
I am using an embedded jbpm solution with HSQL in memory.
Thanks in advance for your help.