Env: ActiveMQ 4.1.1,   Spring 2.5.4,  JDK1.6

I have a number of clients (about 9) connecting to an external broker using
TCP transport. When one of the clients sends a volley of messages, the
activemq connection seems to deadlock - I say *seems* to because I see no 
deadlocks
in the full thread dump of the VM.

This issue seems similar to http://issues.apache.org/activemq/browse/AMQ-897
with the exception that no deadlock is apparent in the stack trace. 
The client applications hangs forever.

Is this a known issue? How do I remedy this problem?

I am also curious that while I have configured no failover, the
stack trace below seems to entail FailoverTransport.

Any help appreciated!

Rgds,  /Um



"ActiveMQ Task" daemon prio=10 tid=0x09d49c00 nid=0x665b waiting for monitor 
entry [0x18ead000..0x18eae0a0]
   java.lang.Thread.State: BLOCKED (on object monitor)
        at 
org.apache.activemq.transport.failover.FailoverTransport$2.iterate(FailoverTransport.java:154)
        - waiting to lock <0x3aa37070> (a java.lang.Object)
        at 
org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:117)
        at 
org.apache.activemq.thread.PooledTaskRunner.access$100(PooledTaskRunner.java:26)
        at 
org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:44)
        at 
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at 
edu.emory.mathcs.backport.java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:619)

"Thread-164" daemon prio=10 tid=0x09166c00 nid=0x6646 runnable 
[0x1feba000..0x1febb120]
   java.lang.Thread.State: TIMED_WAITING (on object monitor)
        at java.lang.Throwable.fillInStackTrace(Native Method)
        - waiting to lock <0xa396cd88> (a java.lang.InterruptedException)
        at java.lang.Throwable.<init>(Throwable.java:181)
        at java.lang.Exception.<init>(Exception.java:29)
        at java.lang.InterruptedException.<init>(InterruptedException.java:38)
        at java.lang.Object.wait(Native Method)
        at 
org.apache.activemq.transport.failover.FailoverTransport.oneway(FailoverTransport.java:358)
        - locked <0x3aa37070> (a java.lang.Object)
        at 
org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:47)
        - locked <0x3aa3d010> (a java.lang.Object)
        at 
org.apache.activemq.transport.ResponseCorrelator.asyncRequest(ResponseCorrelator.java:69)
        at 
org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:74)
        at 
org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1175)
        at 
org.apache.activemq.ActiveMQConnection.ensureConnectionInfoSent(ActiveMQConnection.java:1263)
        - locked <0x3aa3d018> (a org.apache.activemq.ActiveMQConnection)
        at 
org.apache.activemq.ActiveMQConnection.createSession(ActiveMQConnection.java:276)
        at 
org.springframework.jms.support.JmsAccessor.createSession(JmsAccessor.java:196)
        at 
org.springframework.jms.core.JmsTemplate.execute(JmsTemplate.java:450)
        at org.springframework.jms.core.JmsTemplate.send(JmsTemplate.java:526)
       //...

Reply via email to