You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@activemq.apache.org by "Kevin Yaussy (JIRA)" <ji...@apache.org> on 2006/10/05 18:37:09 UTC
[jira] Created: (AMQ-957) Problem with Broker shutdown in 4.0.2
Problem with Broker shutdown in 4.0.2
-------------------------------------
Key: AMQ-957
URL: https://issues.apache.org/activemq/browse/AMQ-957
Project: ActiveMQ
Issue Type: Bug
Components: Broker
Affects Versions: 4.0.2
Reporter: Kevin Yaussy
When running a network of brokers, the first broker shutdown (kill) works. Subsequent brokers hang after the kill. Pasted are the significant threads from kill-3 (after the initial kill).
"ActiveMQ ShutdownHook" prio=10 tid=0x008ee098 nid=0x66 in Object.wait() [0x8e11f000..0x8e11f9f0]
at java.lang.Object.wait(Native Method)
- waiting on <0x99d61140> (a java.lang.Object)
at org.apache.activemq.transport.failover.FailoverTransport.oneway(FailoverTransport.java:352)
- locked <0x99d61140> (a java.lang.Object)
at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
- locked <0x99d611c8> (a java.lang.Object)
at org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
at org.apache.activemq.network.DemandForwardingBridgeSupport.stop(DemandForwardingBridgeSupport.java:297)
at org.apache.activemq.network.DiscoveryNetworkConnector.doStop(DiscoveryNetworkConnector.java:191)
at org.apache.activemq.util.ServiceSupport.stop(ServiceSupport.java:58)
at org.apache.activemq.util.ServiceStopper.stop(ServiceStopper.java:42)
at org.apache.activemq.broker.BrokerService.stop(BrokerService.java:398)
at org.apache.activemq.broker.BrokerService.containerShutdown(BrokerService.java:1040)
at org.apache.activemq.broker.BrokerService$3.run(BrokerService.java:1017)
I think this goes into DemandForwardingBridgeSupport::stop. I fixed an issue (submitted in another issue report, I believe) in 4.0.1 for the same thing. I believe the problem is that the code is expecting to send a message to a broker when it wants to stop the network bridge. This is problematic, since the broker may be gone. There could be any of a number of problems going on in the network, and trying to send a message first before closing out the network bridge will only sometimes work.
I can submit a patch for this.
--
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
[jira] Updated: (AMQ-957) Problem with Broker shutdown in 4.0.2
Posted by "Kevin Yaussy (JIRA)" <ji...@apache.org>.
[ https://issues.apache.org/activemq/browse/AMQ-957?page=all ]
Kevin Yaussy updated AMQ-957:
-----------------------------
Attachment: DemandForwardingBridgeSupport.patch
> Problem with Broker shutdown in 4.0.2
> -------------------------------------
>
> Key: AMQ-957
> URL: https://issues.apache.org/activemq/browse/AMQ-957
> Project: ActiveMQ
> Issue Type: Bug
> Components: Broker
> Affects Versions: 4.0.2
> Reporter: Kevin Yaussy
> Attachments: DemandForwardingBridgeSupport.patch
>
>
> When running a network of brokers, the first broker shutdown (kill) works. Subsequent brokers hang after the kill. Pasted are the significant threads from kill-3 (after the initial kill).
> "ActiveMQ ShutdownHook" prio=10 tid=0x008ee098 nid=0x66 in Object.wait() [0x8e11f000..0x8e11f9f0]
> at java.lang.Object.wait(Native Method)
> - waiting on <0x99d61140> (a java.lang.Object)
> at org.apache.activemq.transport.failover.FailoverTransport.oneway(FailoverTransport.java:352)
> - locked <0x99d61140> (a java.lang.Object)
> at org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:45)
> - locked <0x99d611c8> (a java.lang.Object)
> at org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:59)
> at org.apache.activemq.network.DemandForwardingBridgeSupport.stop(DemandForwardingBridgeSupport.java:297)
> at org.apache.activemq.network.DiscoveryNetworkConnector.doStop(DiscoveryNetworkConnector.java:191)
> at org.apache.activemq.util.ServiceSupport.stop(ServiceSupport.java:58)
> at org.apache.activemq.util.ServiceStopper.stop(ServiceStopper.java:42)
> at org.apache.activemq.broker.BrokerService.stop(BrokerService.java:398)
> at org.apache.activemq.broker.BrokerService.containerShutdown(BrokerService.java:1040)
> at org.apache.activemq.broker.BrokerService$3.run(BrokerService.java:1017)
> I think this goes into DemandForwardingBridgeSupport::stop. I fixed an issue (submitted in another issue report, I believe) in 4.0.1 for the same thing. I believe the problem is that the code is expecting to send a message to a broker when it wants to stop the network bridge. This is problematic, since the broker may be gone. There could be any of a number of problems going on in the network, and trying to send a message first before closing out the network bridge will only sometimes work.
> I can submit a patch for this.
--
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