Resume process execution after error in decision gateway
Hello,
first of all, i would like to say that bpmn-engine is a great libruary, which is now running stable on several instances - thank you very much for that!
However, we currently have the situation that with an inclusive gateway none of the expressions in the outgoing transitions is set to true and the process therefore appears to be trapped on the gateway. Is there a way to repeat the decision or to rewind the process one step? In our example, there is no parallel execution and only one execution token.
The execution context appears to have the status error, as follows:
The current process is somewhat more extensive and has been running for quite some time - we don't want to restart it, we want to rescue it somehow. do you have any ideas?
Thank you, Florian
Tricky. If you inspect state.definitions[0].execution.processes you will see that the broker is stopped. That means that the failed BPMN process has stopped completely and has no track of any of its children. I will dig a bit deeper but no promises.
OK I understand that this is a bit tricky. Is there a way to avoid such errors. e.g:
- we could mark an outgoing transition as default, which is always taken if no expressions become true.
- or we make the error catchable with a CatchErrorEvent
what do you think?
I would go for a default flow. Catch error event cannot be attached to a gateway, afaik.
That would be wonderful - terminating the process with an error status is not satisfying so far ;)
Any progress on this issue @Florian79?
@paed01 yes, to solve it with a default transition is okay for me as default transitions are already supported by bpmn-engine. so you can close this ticket.
Thank you so much! Florian