spring-bootapache-camelsagacamel-spring-dslcamel-saga

Camel and LRA Saga: when the compensation action is executed?


I would use the Camel SAGA component available at https://camel.apache.org/components/3.20.x/eips/saga-eip.html

I can easily understand that a "compensation action" is executed when the respective SAGA action fails, but it's not clear what is the meaning of "failure".

I mean, on which basis does Camel mark a SAGA action as "failed"? Is it considered failed when Camel throws an Exception?

Thank you


Solution

  • Whenever Camel execution breaks for a specific route – it could be when a RunTimeException is thrown or you set an exception in exchange – the compensation will be triggered automatically.