Hi,
We experienced a server hang a couple of days back and analyzed the thread dump. We use
JBoss 4.2 GA, JBM 1.4. The sever seems to hang due to the 2 threads below.
The Thread: Thread-136 : has the WriterpreferenceLock and the MessageSucker Lock and is
waiting for the lock to be released on java.lang.Object@1b6b0a1. While the Thread
Thread-50 has the lock on java.lang.Object@1b6b0a1 and is waiting for MessageSucker
leading to the Dead Lock Situation.
Could publish the full dump after I confirm that I have the necessary permissions. Any
hint on how to avoid this would really be appreciated.
Ranga
| Thread: Thread-136 : priority:5, demon:true, threadId:44755, threadState:BLOCKED,
lockName:java.lang.Object@1b6b0a1
|
org.jboss.messaging.core.impl.MessagingQueue.unregisterSucker(MessagingQueue.java:386)
| ---------------------------------------------------------------------------------
| The previous method call is waiting for Lock java.lang.Object@1b6b0a1
| ---------------------------------------------------------------------------------
|
org.jboss.messaging.core.impl.clusterconnection.MessageSucker.stop(MessageSucker.java:178)
| ---------------------------------------------------------------------------------
| The previous method call seems to have the the Lock on Message Sucker.
| ---------------------------------------------------------------------------------
|
org.jboss.messaging.core.impl.clusterconnection.ClusterConnectionManager.removeSucker(ClusterConnectionManager.java:508)
|
org.jboss.messaging.core.impl.clusterconnection.ClusterConnectionManager.notify(ClusterConnectionManager.java:384)
|
org.jboss.messaging.core.impl.DefaultClusterNotifier.sendNotification(DefaultClusterNotifier.java:72)
|
org.jboss.messaging.core.impl.postoffice.MessagingPostOffice.removeBindingInMemory(MessagingPostOffice.java:2339)
| ---------------------------------------------------------------------------------
| The previous method call seems to have the the Writer Preference Lock
| ---------------------------------------------------------------------------------
|
org.jboss.messaging.core.impl.postoffice.MessagingPostOffice.cleanDataForNode(MessagingPostOffice.java:2690)
|
org.jboss.messaging.core.impl.postoffice.MessagingPostOffice.nodesLeft(MessagingPostOffice.java:963)
|
org.jboss.messaging.core.impl.postoffice.GroupMember$ControlMembershipListener$1ViewChangeRunnable.run(GroupMember.java:517)
| java.lang.Thread.run(Thread.java:595)
|
|
| Thread: Thread-50 : priority:5, demon:false, threadId:220, threadState:BLOCKED,
| lockName:org.jboss.messaging.core.impl.clusterconnection.MessageSucker@eb9dfa
|
org.jboss.messaging.core.impl.clusterconnection.MessageSucker.setConsuming(MessageSucker.java:208)
| ---------------------------------------------------------------------------------
| The previous method call is waiting for Lock
org.jboss.messaging.core.impl.clusterconnection.MessageSucker@eb9dfa
| ---------------------------------------------------------------------------------
| org.jboss.messaging.core.impl.MessagingQueue.informSuckers(MessagingQueue.java:565)
| org.jboss.messaging.core.impl.MessagingQueue.deliverInternal(MessagingQueue.java:515)
| org.jboss.messaging.core.impl.ChannelSupport.deliver(ChannelSupport.java:226)
| -----------------------------------------
| The previous method call seems to have the the lock on java.lang.Object@1b6b0a1"
| -----------------------------------------
|
org.jboss.jms.server.endpoint.ServerSessionEndpoint$2.run(ServerSessionEndpoint.java:1598)
| EDU.oswego.cs.dl.util.concurrent.QueuedExecutor$RunLoop.run(QueuedExecutor.java:89)
| java.lang.Thread.run(Thread.java:595)
|
|
View the original post :
http://www.jboss.org/index.html?module=bb&op=viewtopic&p=4217284#...
Reply to the post :
http://www.jboss.org/index.html?module=bb&op=posting&mode=reply&a...