allthingssecurity commented on PR #26996: URL: https://github.com/apache/camel/pull/26996#issuecomment-5881919711
@davsclaus, thanks for the review. Pushed dc23b03a7 to address both points: 1. **`useMessageIDAsCorrelationID=true` with a failing commit:** `registeredCorrelationId[0]` now follows the handler to the JMSMessageID when `sent()` moves it, so a commit failure cancels the right entry and the exchange fails right away with the commit exception. The new test (`transactedInOut=true`, with a session whose `commit()` throws) asserts one failure callback and no late `ExchangeTimedOutException`. Without the fix, it fails with `ExchangeTimedOutException` after the request timeout. Details are in the inline reply. 2. **Binary compatibility:** on main (4.23), the `void` -> `boolean` change is covered by the upgrade guide entry. A 4.22.x backport would keep `void cancelCorrelationId(String)` and add a new method, e.g. `default boolean tryCancelCorrelationId(String)`, with `JmsProducer` calling that one. I can do that in the backport PR if a backport is wanted. camel-jms request/reply tests (`*InOut*,*ReplyTo*,*RequestReply*,*Timeout*,*MessageID*,*Transacted*`, all surefire executions) ran 144 tests and all passed except `JmsDeadLetterChannelInOutIT`. That test times out when it runs in this batch, but it passes on its own, and it fails the same way in the same batch on the pre-PR code, so this change doesn't cause it. _Claude Code on behalf of allthingssecurity_ -- 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]
