etzel-mes opened a new pull request, #27906: URL: https://github.com/apache/camel/pull/27906
# Description [CAMEL-25671](https://issues.apache.org/jira/browse/CAMEL-25671), raised in the review of #27780. A consumer node ID whose namespace URI (`nsu=`) is not in the namespace table of the server made `SubscriptionManager.lookupNamespace` throw a `NullPointerException`. It went to the reconnect path, so one wrong entry in a `nodes` list took the whole client connection down, including the consumers of the other nodes. The consumer now treats such a node like a node that does not exist on the server (#27780): one WARN with the node ID, and one `DataValue` with `Bad_NodeIdUnknown` for that node (with `omitNullValues=false`). The other nodes and the connection keep working. The `badSubscriptions` map and the 10 second `resubscribe` that served the old `Bad_InvalidArgument` branch are removed: that branch was unreachable, because `lookupNamespace` never returned null. - Test: `MonitorNodesTest#unknownNamespaceUriReceivesBadStatusAndTheOtherNodesKeepWorking` (fails without the fix: none of the 3 expected messages arrive) - Docs sentence, catalog doc copy, 4.24 upgrade-guide note - Producers (write, call, read, browse) are not changed; they still fail the connection on an unknown `nsu=`. I can file a separate JIRA for them if wanted. JIRA user: `mardonius` (I cannot assign the issue myself). @davsclaus @oscerd could you take a look? # Target - [x] I checked that the commit is targeting the correct branch (Camel 4 uses the `main` branch) # Tracking - [x] If this is a large change, bug fix, or code improvement, I checked there is a [JIRA issue](https://issues.apache.org/jira/browse/CAMEL) filed for the change (usually before you start working on it). # Apache Camel coding standards and style - [x] I checked that each commit in the pull request has a meaningful subject line and body. - [ ] I have run `mvn clean install -DskipTests` locally from root folder and I have committed all auto-generated changes. # AI-assisted contributions - [x] If this PR includes AI-generated code, commits have proper co-authorship attribution (e.g., `Co-authored-by` trailers) and the PR description identifies the AI tool used. _Claude Code on behalf of etzel-mes_ 🤖 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]
