AnsweredAssumed Answered

Error boundary event does not cancel the subprocess

Question asked by 3on on Aug 2, 2013
Latest reply on Aug 7, 2013 by trademak

first thank you for all your dilligent work on the Activiti engine.

I'd like to discuss an issue when trying to interrupt a subprocess when an error event occurs.

We have designed a main subprocess with 2 parallel branches between two parallel gateways. There is a call activity in each branch calling a subprocess (let's call them Subprocess A and Subprocess B) which may end in an error end state with the same error code. On the boundary of the subprocess with 2 branches there is an error boundary event catching the error event and connected to further activities. See attached diagram.

When either Subprocess A or Subprocess B end in the error state, the error is caught on the boundary event and the corresponding parallel branch is interrupted. Unfortunately the other parallel branch continues its execution until the parallel join where it stops and the process remains active although the end state in the error flow was reached.

When we attach another error boundary event directly to one of the call activities and connect it to an error end state, the error boundary event is never reached and again one branch is interrupted and the other one continues until the parallel join.

How can we design the process in the way that an error stops the execution of the whole subprocess and not only one branch in it?

Thanks and best regards,