chore(deps): upgrade IBM MQ to 10.0 - #25107
Conversation
Upgrade IBM MQ client dependency from 9.4.5.1 to 10.0.0.0 and container image from 9.4.5.0-r2 to 10.0.0.0-r2. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> Signed-off-by: Claus Ibsen <claus.ibsen@gmail.com>
|
🌟 Thank you for your contribution to the Apache Camel project! 🌟 🐫 Apache Camel Committers, please review the following items:
|
|
🧪 CI tested the following changed modules:
🔬 Scalpel shadow comparison — Scalpel: 15 tested, 28 compile-only — current: 14 all testedMaveniverse Scalpel detected 43 affected modules (current approach: 14).
|
gnodet
left a comment
There was a problem hiding this comment.
Claude Code on behalf of Guillaume Nodet
CI Failure — IBM MQ 10.0 reply-to behavior change
Both CI builds (Java 17 and Java 25) fail with a test regression in camel-jms:
Failing test: JmsReplyToIbmMQTest.testCustomJMSReplyToInOut
Error: expected: <My name is Camel> but was: <null>
Deterministic: Failed 3/3 retries — not flaky.
The test sends a message to DEV.QUEUE.1, consumes it with replyTo=queue:DEV.QUEUE.2, transforms the body to "My name is Camel", then expects the reply to arrive on DEV.QUEUE.2. With IBM MQ 10.0, the reply never arrives (returns null after the 20-second timeout).
This suggests IBM MQ 10.0 has a behavioral change in how JMSReplyTo queues are handled — possibly related to the queue: prefix format, reply routing, or default queue configuration in the 10.0 container image.
Worth investigating:
- Whether IBM MQ 10.0 changed the
JMSReplyToheader format or queue name resolution - Whether the
DEV.QUEUE.2queue exists by default in the 10.0 container image (it was pre-created in 9.x images) - Whether the
replyTo=queue:DEV.QUEUE.2URI format needs adjustment for MQ 10.0
gnodet
left a comment
There was a problem hiding this comment.
Review Summary
This PR bumps IBM MQ from 9.4.5.1 to 10.0.0.0 (client library) and the container image from 9.4.5.0-r2 to 10.0.0.0-r2 across 4 files. CI is deterministically failing because JmsReplyToIbmMQTest.testCustomJMSReplyToInOut returns null instead of the expected reply body — the test failed 3/3 retries on both Java 17 and Java 25 builds.
This same failure was already identified and flagged with CHANGES_REQUESTED by @apupier and @oscerd on predecessor PR #24040, and confirmed by @apupier to reproduce with 10.0.0.0-r1 as well. The root cause appears to be a behavioral change in IBM MQ 10.0's JMSReplyTo queue handling.
Findings
🔴 High: Deterministic CI failure
The upgrade breaks JmsReplyToIbmMQTest.testCustomJMSReplyToInOut. The reply message sent to DEV.QUEUE.2 (configured via replyTo=queue:DEV.QUEUE.2) never arrives under MQ 10.0. The PR needs to either:
- (a) investigate and fix the test to accommodate MQ 10.0 behavior,
- (b) document the behavioral change and adjust the test accordingly, or
- (c) defer the upgrade until the root cause is understood.
🟡 Medium: MQ_APP_PASSWORD deprecation (pre-existing)
IBM deprecated the MQ_APP_PASSWORD environment variable starting from MQ 9.4.0.0, replacing it with Podman/Docker secrets (mqAppPassword). While this is pre-existing code not changed in this PR, a major version upgrade is a good opportunity to address it.
🔵 Low: Major version upgrade labeling
This is a major version boundary crossing (9.x → 10.0). The chore(deps) commit prefix typically signals routine minor/patch bumps. Consider documenting the behavioral changes from the IBM MQ 10.0 release notes in the PR description.
Note: The version bump itself is consistent and complete across all 4 files.
This review was generated by an AI agent and may contain inaccuracies. Please verify all suggestions before applying.
Claude Code on behalf of @gnodet
|
Claude Code on behalf of Guillaume Nodet Closing as superseded by #25232, which includes the IBM MQ 10.0 upgrade from this PR plus a fix for the Thank you @davsclaus for the original upgrade PR that identified this work! |
Summary
Upgrade IBM MQ client and container to version 10.0, combining PR #24040 and PR #24640:
com.ibm.mq:com.ibm.mq.jakarta.client: 9.4.5.1 → 10.0.0.0icr.io/ibm-messaging/mq: 9.4.5.0-r2 → 10.0.0.0-r2Closes #24040
Closes #24640
Claude Code on behalf of davsclaus