camunda / camunda-docs

Camunda 8 Documentation, including all components and features
https://docs.camunda.io/
Other
52 stars 180 forks source link

What are error variables? #3726

Open falko opened 4 months ago

falko commented 4 months ago

The error events page talks about "error variables" but does not explain what that is: https://github.com/camunda/camunda-docs/blob/25854219f2b2384a73088eb8db162311432110e2/versioned_docs/version-8.5/components/modeler/bpmn/error-events/error-events.md?plain=1#L82

I assume it means the variables that can be passed to a ThrowError RPC message when failing a job in a client: https://docs.camunda.io/docs/apis-tools/zeebe-api/gateway-service/#throwerror-rpc

Or is there a way to send data with an Error Throw Event?

Or are there some magic variables, e.g. that the errorCode is automatically stored in a local variable of the catching Error Event?

I'm asking because, I would have needed one of the latter two options for a customer project and I vaguely remember seeing a feature request in that direction.

falko commented 4 months ago

@jothikiruthika FYI

akeller commented 4 months ago

Reached out to #ask-zeebe to triage - https://camunda.slack.com/archives/CSQ2E3BT4/p1714160024787079

mustafadagher commented 4 months ago

ZPA triage:

mustafadagher commented 4 months ago

@falko what is the urgency on this from your side?

falko commented 4 months ago

@mustafadagher Either of the following feature requests would be a solution for the customer to "send data with an Error Throw Event":

There is a workaround to use a message throw event in the child process and a message boundary event on the call activity in the parent process. However, that involves an extra job worker and is much more expensive in high-performance scenarios. This workaround could be improved by sending messages directly inside the engine. But that would likely still come with correlation overhead while Errors/Escalations directly go to the parent process.

falko commented 4 months ago

Urgency is medium. It can be worked around by throwing more hardware at the problem, but the hardware budget for this customer is already quite high

falko commented 4 months ago

@jothikiruthika will investigate if a multi-instance completion condition could solve it for her customer.