Claus Ibsen created CAMEL-25601:
-----------------------------------
Summary: camel-vertx-websocket - a client consumer started while
the WebSocket is already open registers no handlers
Key: CAMEL-25601
URL: https://issues.apache.org/jira/browse/CAMEL-25601
Project: Camel
Issue Type: Bug
Components: camel-vertx-websocket
Reporter: Claus Ibsen
Fix For: 4.24.0
Found while reviewing CAMEL-25582 (PR #27762); the gap is older than that PR.
When {{VertxWebsocketClientConsumer}} starts and {{getWebSocket}} finds the
endpoint's WebSocket already open, the setup callback is not called, so the
consumer never registers its handlers.
This happens on a plain {{stopRoute}}/{{startRoute}} while the connection is
healthy: the endpoint is not stopped, the WebSocket stays open, and the new
consumer gets no messages. The stopped consumer's handlers stay on the
WebSocket and keep calling {{handleResult}} -> {{getProcessor().process(...)}},
even though that consumer is stopped. It also happens when a producer on the
same endpoint opened the WebSocket first.
Possible fix: register the handlers on an already-open WebSocket in
{{doStart}}, and detach them in {{doStop}}.
_Claude Code on behalf of Claus Ibsen_
--
This message was sent by Atlassian Jira
(v8.20.10#820010)