How to rollback message correlations?

Hello,

  • I want a service task to spawn multiple messages in a loop using runtimeService.createMessageCorrelation(message).
  • I also want those messages to start being processed only after the loop is finished successfully.
  • if an exception is thrown in that service task, all those correlations should be rolled back and none of them start processing.

Does Camunda work this way? I mean - if a lengthy task calls multiple correlate and then throws an exception - will all those messages rolled back? Even if the correlated events are marked as “non-interrupting” or “Asynchronous before”?