Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Unexpected behaviour with service tasks between parallel gateways #4024

Open
Priyadharshini-Selvadurai opened this issue Feb 11, 2025 · 0 comments

Comments

@Priyadharshini-Selvadurai

Issue Description:
The service tasks configured between parallel gateways are stuck abruptly without any exception.

Example Use case:
Image

Here, both the parallel gateways are asynchronous & exclusive and service tasks A, B and C are also asynchronous and exclusive. However we observe a pattern where service tasks A and B are executed as expected and service task C is stuck without moving forward. ACT_RU_EXECUTION table is still pointing at service task C and not moving to suspension state. There are no timeouts from service task C and no trace to confirm that the service task has started it's execution.

NOTE: This issue is not consistent but happening quite a few times.

Code:
<?xml version="1.0" encoding="UTF-8"?> <definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test"> <process id="myProcess" name="My process" isExecutable="true"> <startEvent id="startevent1" name="Start"></startEvent> <parallelGateway id="parallelgateway1" name="Parallel Gateway" activiti:async="true"></parallelGateway> <parallelGateway id="parallelgateway2" name="Parallel Gateway" activiti:async="true"></parallelGateway> <serviceTask id="servicetask1" name="Service Task A"></serviceTask> <serviceTask id="servicetask2" name="Service Task B"></serviceTask> <serviceTask id="servicetask3" name="Service Task C"></serviceTask> <sequenceFlow id="flow1" sourceRef="startevent1" targetRef="parallelgateway1"></sequenceFlow> <sequenceFlow id="flow2" sourceRef="parallelgateway1" targetRef="servicetask1"></sequenceFlow> <sequenceFlow id="flow3" sourceRef="parallelgateway1" targetRef="servicetask3"></sequenceFlow> <sequenceFlow id="flow4" sourceRef="servicetask1" targetRef="servicetask2"></sequenceFlow> <sequenceFlow id="flow5" sourceRef="servicetask3" targetRef="parallelgateway2"></sequenceFlow> <sequenceFlow id="flow6" sourceRef="servicetask2" targetRef="parallelgateway2"></sequenceFlow> <serviceTask id="servicetask4" name="Service Task D"></serviceTask> <sequenceFlow id="flow7" sourceRef="parallelgateway2" targetRef="servicetask4"></sequenceFlow> <endEvent id="endevent1" name="End"></endEvent> <sequenceFlow id="flow8" sourceRef="servicetask4" targetRef="endevent1"></sequenceFlow> </process> <bpmndi:BPMNDiagram id="BPMNDiagram_myProcess"> <bpmndi:BPMNPlane bpmnElement="myProcess" id="BPMNPlane_myProcess"> <bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1"> <omgdc:Bounds height="35.0" width="35.0" x="160.0" y="273.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="parallelgateway1" id="BPMNShape_parallelgateway1"> <omgdc:Bounds height="40.0" width="40.0" x="260.0" y="270.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="parallelgateway2" id="BPMNShape_parallelgateway2"> <omgdc:Bounds height="40.0" width="40.0" x="720.0" y="270.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask1" id="BPMNShape_servicetask1"> <omgdc:Bounds height="55.0" width="105.0" x="370.0" y="180.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask2" id="BPMNShape_servicetask2"> <omgdc:Bounds height="55.0" width="105.0" x="550.0" y="180.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask3" id="BPMNShape_servicetask3"> <omgdc:Bounds height="55.0" width="105.0" x="451.0" y="333.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="servicetask4" id="BPMNShape_servicetask4"> <omgdc:Bounds height="55.0" width="105.0" x="840.0" y="263.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1"> <omgdc:Bounds height="35.0" width="35.0" x="1000.0" y="273.0"></omgdc:Bounds> </bpmndi:BPMNShape> <bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1"> <omgdi:waypoint x="195.0" y="290.0"></omgdi:waypoint> <omgdi:waypoint x="260.0" y="290.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2"> <omgdi:waypoint x="280.0" y="270.0"></omgdi:waypoint> <omgdi:waypoint x="280.0" y="207.0"></omgdi:waypoint> <omgdi:waypoint x="370.0" y="207.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3"> <omgdi:waypoint x="280.0" y="310.0"></omgdi:waypoint> <omgdi:waypoint x="280.0" y="360.0"></omgdi:waypoint> <omgdi:waypoint x="451.0" y="360.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4"> <omgdi:waypoint x="475.0" y="207.0"></omgdi:waypoint> <omgdi:waypoint x="550.0" y="207.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5"> <omgdi:waypoint x="556.0" y="360.0"></omgdi:waypoint> <omgdi:waypoint x="740.0" y="360.0"></omgdi:waypoint> <omgdi:waypoint x="740.0" y="310.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6"> <omgdi:waypoint x="655.0" y="207.0"></omgdi:waypoint> <omgdi:waypoint x="740.0" y="207.0"></omgdi:waypoint> <omgdi:waypoint x="740.0" y="270.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow7" id="BPMNEdge_flow7"> <omgdi:waypoint x="760.0" y="290.0"></omgdi:waypoint> <omgdi:waypoint x="840.0" y="290.0"></omgdi:waypoint> </bpmndi:BPMNEdge> <bpmndi:BPMNEdge bpmnElement="flow8" id="BPMNEdge_flow8"> <omgdi:waypoint x="945.0" y="290.0"></omgdi:waypoint> <omgdi:waypoint x="1000.0" y="290.0"></omgdi:waypoint> </bpmndi:BPMNEdge> </bpmndi:BPMNPlane> </bpmndi:BPMNDiagram> </definitions>

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant