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

Resume process execution after error in decision gateway #194

Open
Florian79 opened this issue Oct 22, 2024 · 4 comments
Open

Resume process execution after error in decision gateway #194

Florian79 opened this issue Oct 22, 2024 · 4 comments

Comments

@Florian79
Copy link

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!

image

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:

image

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

@paed01
Copy link
Owner

paed01 commented Oct 23, 2024

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.

@Florian79
Copy link
Author

Florian79 commented Oct 28, 2024

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?

@paed01
Copy link
Owner

paed01 commented Oct 28, 2024

I would go for a default flow. Catch error event cannot be attached to a gateway, afaik.

@Florian79
Copy link
Author

That would be wonderful - terminating the process with an error status is not satisfying so far ;)

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

2 participants