[ https://issues.apache.org/activemq/browse/AMQ-1029?page=comments#action_37512 ] Jonas Lim commented on AMQ-1029: --------------------------------
sorry about that, forgot to apply it on the 4.0 branch: it's applied at 4.0 branch : r478063 > TransportConnector get duplicated when used with JMX > ---------------------------------------------------- > > Key: AMQ-1029 > URL: https://issues.apache.org/activemq/browse/AMQ-1029 > Project: ActiveMQ > Issue Type: Bug > Components: Broker > Affects Versions: 4.0.2 > Environment: Linux, ActiveMQ broker in a custom servlet, running on > Tomcat 5.5. > Reporter: Andreas Mack > Priority: Minor > Fix For: 4.1.2, 4.2.0 > > Attachments: tc-jmx-patch > > > The BrokerService keeps the configured TransportConnectors in a list called > transportConnectors. In startAllConnectors, the list is traversed and each > connector is started through startTransportConnector(). This method checks if > JMX is configured, and if so, it called connector.asManagedConnector() which > returns a new instance of a TransportConnector. This instance is started. > But in the transportConnectors list of BrokerService, the old, unstarted > object is still existent. Since a TransportConnector starts a > TransportServiceDetector thread, the old, unstarted instance contains a TSD > that is not active. But the started TSD isn't referenced anymore. > On shutdown, the old, unstarted TC and subsequently TSD are stopped. The > "lost" instance can't be touched anymore. > My patch does this: During spin-up, startTransportConnector() returns the > instance that is started. The started instances are collected in an > arraylist, this list replaces transportConnectors after startup. > Thanks to jstrachan for being patient on irc. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: https://issues.apache.org/activemq/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira
