Uploaded image for project: 'camunda BPM'
  1. camunda BPM
  2. CAM-4304

Intermediate throw compensation event do not wait for compensation of subprocess on different scope

    XMLWordPrintable

    Details

      Description

      Given:

      • subprocess with compensation handler
      • other subprocess or activity with compensation handler
      • intermediate throw / end compensation event after subprocess in different scope (e.g. in event subprocess)

      When:

      • throw compensation event for scope

      Then:

      • the throwing activity do not wait for compensation handler of subprocess

      Note:

      • enable test case org.camunda.bpm.engine.test.bpmn.event.compensate.CompensateEventTest.FAILING_testCompensateInEventSubprocess()
      • reason of failure: execution of subprocess is not a child of throwing execution
      • see org.camunda.bpm.engine.impl.bpmn.helper.CompensationUtil.throwCompensationEvent(List<CompensateEventSubscriptionEntity>, ActivityExecution, boolean)
      • extend org.camunda.bpm.engine.impl.persistence.entity.ExecutionEntity.setParent(PvmExecutionImpl)
        • remove from old parent if exists
        • add as child of new parent if exists

        Attachments

          Issue Links

            Activity

              People

              Assignee:
              roman.smirnov Roman Smirnov
              Reporter:
              philipp.ossler Philipp Ossler
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

                Dates

                Created:
                Updated:
                Resolved: