You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@activemq.apache.org by hbruch <ho...@isb-ag.de> on 2006/09/27 20:19:43 UTC
Hanging shutdown using failover networkConnector
I just updated to AMQ 4.0.2 (RC4). Changes since 4.0.1 seem to result in a
hanging broker, if a network connection could not be established.
The stacktrace is as follows:
HangingShutdown at localhost:4847 (Suspended)
System Thread [Finalizer] (Suspended)
System Thread [Reference Handler] (Suspended)
Thread [main] (Suspended)
MutexTransport.oneway(Command) line: 45
ResponseCorrelator.oneway(Command) line: 59
DiscoveryNetworkConnector$2(DemandForwardingBridgeSupport).stop() line:
297
DiscoveryNetworkConnector.doStop(ServiceStopper) line: 191
DiscoveryNetworkConnector(ServiceSupport).stop() line: 58
ServiceStopper.stop(Service) line: 42
XBeanBrokerService(BrokerService).stop() line: 398
HangingShutdown.main(String[]) line: 10
System Thread [Signal Dispatcher] (Suspended)
Thread [ActiveMQ Transport Server: tcp://isbst-note11:61618] (Suspended)
PlainSocketImpl.socketAccept(SocketImpl) line: not available [native
method]
SocksSocketImpl(PlainSocketImpl).accept(SocketImpl) line: 384
ServerSocket.implAccept(Socket) line: 450
ServerSocket.accept() line: 421
TcpTransportServer.run() line: 125
Thread.run() line: 595
Thread [ActiveMQ Transport Status Monitor: default] (Suspended)
Thread.sleep(long) line: not available [native method]
TransportStatusDetector.run() line: 99
Thread.run() line: 595
Thread [ActiveMQ Task] (Suspended)
PlainSocketImpl.socketConnect(InetAddress, int, int) line: not available
[native method]
SocksSocketImpl(PlainSocketImpl).doConnect(InetAddress, int, int) line:
333
SocksSocketImpl(PlainSocketImpl).connectToAddress(InetAddress, int, int)
line: 195
SocksSocketImpl(PlainSocketImpl).connect(SocketAddress, int) line: 182
SocksSocketImpl.connect(SocketAddress, int) line: 366
Socket.connect(SocketAddress, int) line: 516
TcpTransport.connect() line: 319
TcpTransport.doStart() line: 288
TcpTransport(ServiceSupport).start() line: 49
InactivityMonitor(TransportFilter).start() line: 56
WireFormatNegotiator(TransportFilter).start() line: 56
WireFormatNegotiator.start() line: 60
FailoverTransport$2.iterate() line: 170
PooledTaskRunner.runTask() line: 111
PooledTaskRunner.access$1(PooledTaskRunner) line: 95
PooledTaskRunner$1.run() line: 44
ThreadPoolExecutor$Worker.runTask(Runnable) line: 650
ThreadPoolExecutor$Worker.run() line: 675
Thread.run() line: 595
Thread [ActiveMQ Transport Status Monitor: vm://Broker] (Suspended)
Thread.sleep(long) line: not available [native method]
TransportStatusDetector.run() line: 99
Thread.run() line: 595
Thread [Thread-1] (Suspended)
Object.wait(long) line: not available [native method]
FailoverTransport.oneway(Command) line: 359
MutexTransport.oneway(Command) line: 45
ResponseCorrelator.oneway(Command) line: 59
DiscoveryNetworkConnector$2(DemandForwardingBridgeSupport).startRemoteBridge()
line: 253
DemandForwardingBridgeSupport$4.run() line: 204
See code below to reproduce.
import java.net.URI;
import org.apache.activemq.broker.BrokerFactory;
import org.apache.activemq.broker.BrokerService;
public class HangingShutdown {
public static int main(String[] args) throws Exception {
BrokerService broker = BrokerFactory.createBroker(new
URI("xbean:hangingBroker.xml"));
broker.start();
broker.stop();
return 0;
}
}
<beans xmlns="http://activemq.org/config/1.0">
<broker brokerName="Broker" useJmx="false" persistent="false">
<transportConnectors>
<transportConnector name="default" uri="tcp://localhost:61618"/>
</transportConnectors>
<networkConnectors>
<networkConnector name="other" uri="static:tcp://localhost:61619"
failover="true"/>
</networkConnectors>
</broker>
</beans>
--
View this message in context: http://www.nabble.com/Hanging-shutdown-using-failover-networkConnector-tf2346467.html#a6532390
Sent from the ActiveMQ - User mailing list archive at Nabble.com.