Dead Lock in JBoss Messaging
dasmurali Nov 17, 2011 1:46 AMHi All,
We had two applications(let's call them as A and B)
running in tow different JBoss 5.1.0 AS servers. Both are using default JBoss Messaging(1.4.3.GA) comes with AS.
Client (actually an MDB) running in
A is trying to connect to JMS Queue hosted by Application B (and will send messages). Some times when client trying to create JMS Connection from server B, the thread is not coming back. When verified in server B, there are multiple threads are in BLOCK state.
Please find the below client code which is trying to create connection (this is where my client is not return back).
[code]
QueueConnection connect = factory.createQueueConnection();
[/code]
Please find the below thread dump taken from server B(which is hosted JMS Queue)
Thread: WorkerThread#2[<IP>:40561] : priority:5, demon:false, threadId:291, threadState:BLOCKED
- waiting on <0x1ad437e> (a org.jboss.aop.AspectManager)
org.jboss.jms.server.endpoint.ServerConnectionFactoryEndpoint.createConnectionDelegateInternal(ServerConnectionFactoryEndpoint.java:288)
org.jboss.jms.server.endpoint.ServerConnectionFactoryEndpoint.createConnectionDelegate(ServerConnectionFactoryEndpoint.java:171)
org.jboss.jms.server.endpoint.advised.ConnectionFactoryAdvised.org$jboss$jms$server$endpoint$advised$ConnectionFactoryAdvised$createConnectionDelegate$aop(ConnectionFactoryAdvised.java:108)
org.jboss.jms.server.endpoint.advised.ConnectionFactoryAdvised.createConnectionDelegate(ConnectionFactoryAdvised.java)
org.jboss.jms.wireformat.ConnectionFactoryCreateConnectionDelegateRequest.serverInvoke(ConnectionFactoryCreateConnectionDelegateRequest.java:91)
org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:143)
org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:891)
org.jboss.remoting.transport.socket.ServerThread.completeInvocation(ServerThread.java:744)
org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:697)
org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:551)
org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:232)
Thread: WorkerThread#3[<IP>:38371] : priority:5, demon:false, threadId:292, threadState:BLOCKED
- waiting on <0x1ad437e> (a org.jboss.aop.AspectManager)
org.jboss.jms.server.endpoint.ServerConnectionFactoryEndpoint.createConnectionDelegateInternal(ServerConnectionFactoryEndpoint.java:288)
org.jboss.jms.server.endpoint.ServerConnectionFactoryEndpoint.createConnectionDelegate(ServerConnectionFactoryEndpoint.java:171)
org.jboss.jms.server.endpoint.advised.ConnectionFactoryAdvised.org$jboss$jms$server$endpoint$advised$ConnectionFactoryAdvised$createConnectionDelegate$aop(ConnectionFactoryAdvised.java:108)
org.jboss.jms.server.endpoint.advised.ConnectionFactoryAdvised.createConnectionDelegate(ConnectionFactoryAdvised.java)
org.jboss.jms.wireformat.ConnectionFactoryCreateConnectionDelegateRequest.serverInvoke(ConnectionFactoryCreateConnectionDelegateRequest.java:91)
org.jboss.jms.server.remoting.JMSServerInvocationHandler.invoke(JMSServerInvocationHandler.java:143)
org.jboss.remoting.ServerInvoker.invoke(ServerInvoker.java:891)
org.jboss.remoting.transport.socket.ServerThread.completeInvocation(ServerThread.java:744)
org.jboss.remoting.transport.socket.ServerThread.processInvocation(ServerThread.java:697)
org.jboss.remoting.transport.socket.ServerThread.dorun(ServerThread.java:551)
org.jboss.remoting.transport.socket.ServerThread.run(ServerThread.java:232)
Thanks and Regards
Murali Reddy