In my case workflows includes long lasting tasks which must be interrupted by triggering interrupting boundary events.
It seems that Zeebe gRPC API does not have such notifications.
The only way I see is to implement Exporter and once it received activity cancellation event, pass it to Job Worker.
Does not look optimal though.
Any other legit ways to do this?
welcome to the Zeebe community
Thank you for raising this up. You’re right that Zeebe doesn’t provide a notification for the job worker if the job is canceled. The reason is the job worker protocol itself that is based on polling (i.e. requesting/fetching) the broker and doesn’t have a open connection between the job worker and the broker.
Currently, an exporter is the best open to get this notification (e.g. using the ES/Hazelcast exporter).
Do you want to tell more about your use case?
What kind of worker do you have?
@philipp.ossler , Thank you for welcoming and for your answer!
I thought may be I just did not find some ready-to-use interface for this.
In my use case a job forwarding is used. Jobs are forwarded into another system which waits for available resources to execute them. Waiting might take months.
Thanks for sharing
Are you okay with using an exporter to get the notification?
Currently, I don’t see any other solution. In order to send this kind of notification, the broker needs to know which job worker has activated the job and how to reach it (i.e. connection address). Especially, if the job is pending for a while, the connection to the job worker might change.
Taking in account the Zeebe architecture, I think this is a feasible solution.