Hi Bernd,
My first design used a multi instance on the Order process. Both design go well for my use case.
A), if the multi instance is on the order, i’m agree that i need a compensation for each instance. I failed to find the good design for Saga pattern, compensation and multi instance sub process with camunda. I need to compensate all completed instances and to stop the others one or wait that all completed and compensate the all. But i don’t want to introduce some god object that track the item’s state in the multi instance sub process or add a task that check all done with DB call (like in my pevious design) before compensate. I’m convinced the BPMN standard provide usefull tool like the compensation mechanism to do it, but i need to find how to apply it to multi instances sub process in order to propagate the compensation to the tasks before, in the reverse order. It’s the normal behavior for Saga pattern. I’ve not succeed to do that with camunda.
See here for my issue in detail
B), my requirement is to compensate all if any micro service (goods or others) failed. Compensation in the good micro service won’t be usefull because the main process, in orchestration scenario (order process) must be aware of that failure to compensate others instances and previous tasks.
@BerndRuecker have you already facing this kind of design (multi instance + compensation) and find a way to use the Saga pattern?