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]

Reply via email to