sounds like http://activemq.apache.org/producer-flow-control.html - increase
your q usage limits or decrease the system usage to ensure pending message
references are paged to disk. see also :
http://activemq.apache.org/message-cursors.html

2009/12/11 David Delbecq <de...@oma.be>

> Hello,
>
> we are using an activeMQ server here, as a standalone application and
> used by tomcat, which connects to server using tcp:// protocol.
> Sometimes, the tomcat client is stalled trying to connect to a queue,
> and i have no idea why. Here is a stack dump from tomcat jvm when this
> happen
>
>   java.lang.Thread.State: WAITING (parking)
>        at sun.misc.Unsafe.park(Native Method)
>        - parking to wait for  <3f543bf8> (a
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
>        at java.util.concurrent.locks.LockSupport.park(LockSupport.java:158)
>        at
>
> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1889)
>        at
> java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:317)
>        at
>
> org.apache.activemq.transport.FutureResponse.getResult(FutureResponse.java:40)
>        at
>
> org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:80)
>        at
>
> org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1233)
>        at
> org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1659)
>        - locked <3f5425b8> (a java.lang.Object)
>        at
>
> org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:227)
>        at
>
> org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:241)
>        at be.rmi.shark.JMSEventManager.sendEvent(JMSEventManager.java:146)
>
> It seems that client is waiting forever to receive and answer from MQ
> server. I have several threads in this situation and the only way to
> unlock de situation is to kill and restart the activeMQ server. However,
> the server itself does not loag any error. It looks like the srver
> "forgot" to send response and client is waiting forever. Any idea what
> can cause this? In current situation, we have noticed this happens when
> another client is making bad connection (it connect to activeMQ queues,
> receive an item but neither close connection, nor acknowledge or reject
> the message). Could it be that activeMQ is stalled waiting for
> acknoledge befor allowing other client to add items to queue. Should
> those 2 operations be desynchronzed?
>
> --
> David Delbecq
> ICT
> Institut Royal Météorologique
> Ext:557
>
>
>


-- 
http://blog.garytully.com

Open Source Integration
http://fusesource.com

Reply via email to