[
https://issues.apache.org/jira/browse/CAMEL-26080?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Work on CAMEL-26080 started by shashank.
----------------------------------------
> camel-jgroups - do not close a channel that the user gave to the component or
> an endpoint when Camel stops
> ----------------------------------------------------------------------------------------------------------
>
> Key: CAMEL-26080
> URL: https://issues.apache.org/jira/browse/CAMEL-26080
> Project: Camel
> Issue Type: Improvement
> Components: camel-jgroups
> Reporter: shashank
> Assignee: shashank
> Priority: Minor
>
> {{JGroupsComponent.doStop}} closes the channel of the component ({{channel}}
> option of the component) and every channel given to an endpoint
> ({{channel=#myChannel}}), as it did before CAMEL-25852. A {{JChannel}} cannot
> be connected again once it is closed ({{JChannel.checkClosed()}} throws
> {{IllegalStateException("channel is closed")}}), so a registry bean used as
> channel is unusable after the CamelContext is stopped and started again in
> place. Most Camel components leave a client the user supplied open and only
> close what they created.
> Since CAMEL-25852 the endpoint knows whether it created its channel
> ({{JGroupsEndpoint.isOwnChannel()}}), and the component counts the users of
> the other channels.
> h3. Proposed fix
> Close only the channels that the endpoints created. Disconnect (not close)
> the channels the user supplied when their last producer/consumer stops, as
> today, and leave them open at component stop. Upgrade guide entry: a
> user-supplied channel is no longer closed by Camel; close it yourself (for
> example as a bean with a destroy method).
> Also: the component channel is closed at stop even when no endpoint ever used
> it (harmless, but goes with the change).
> Tests: stop and start the CamelContext with {{channel=#bean}} and with the
> component channel; the routes receive again.
> Relates to CAMEL-25852 (review of apache/camel#28325).
> _Filed with Claude Code on behalf of allthingssecurity._
--
This message was sent by Atlassian Jira
(v10.3.26#10030026)