davsclaus opened a new pull request, #26941:
URL: https://github.com/apache/camel/pull/26941

   [CAMEL-25058](https://issues.apache.org/jira/browse/CAMEL-25058)
   
   ## What
   
   `saga:complete` and `saga:compensate` (`SagaProducer`) fell back to the 
`Long-Running-Action` message header whenever the exchange was not bound to a 
saga, for every saga service. CAMEL-24449 already restricted that fallback in 
the Saga EIP (`SagaProcessor`) to saga services that opt in via 
`CamelSagaService.isLongRunningActionHeaderSupported()` (LRA does, the 
in-memory service does not). This applies the same rule to the producer. It is 
a hardening/consistency change.
   
   ## Depends on #26869 (CAMEL-25011)
   
   `SagaComponentTest` completes a MANUAL saga after a `seda:` hop. Exchange 
copies currently lose the saga binding (the CAMEL-25011 bug), so without the 
header fallback that test fails. With #26869 applied locally, all saga tests in 
camel-core and camel-lra pass. **Merge #26869 first.**
   
   ## Changes
   
   - `SagaProducer`: consult the header only when 
`isLongRunningActionHeaderSupported()` is true.
   - New `SagaProducerLongRunningActionHeaderTest` covers the header being 
ignored (in-memory) and used (service opting in).
   - Upgrade guide entries in 4.23, and on `main` for 4.22.2 and 4.18.5 so the 
backports are documented.
   
   ## Backports
   
   Same lines as CAMEL-24449 (4.22.x, 4.18.x), together with CAMEL-25011. On 
4.18.x `SagaProducer` does not yet read the exchange's internal saga state 
first (CAMEL-24149), so that change is needed there too.
   
   ## Testing
   
   - camel-core: `Saga*Test`. `SagaComponentTest` fails without #26869 and 
passes with it; everything else passes.
   - camel-lra: `LRA*Test` pass.
   
   _Claude Code on behalf of davsclaus_
   
   🤖 Generated with [Claude Code](https://claude.com/claude-code)
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to