Oleg,

You can change the default value of 2000 by adding the broker.asyncQueueDepth 
parameter to your vm transport definition.  In your case, you would need to 
include the definition of the vm transport as part of your activemq 
configuration file.  Take a look at the following web page.  

http://activemq.apache.org/vm-transport-reference.html

The real question here is why are you exhausting the queue size?  Increasing 
the limit might solve this issue in the short term but in the long term you 
need to understand why you are exhausting you queue limit.

--Claudio





>________________________________
> From: Oleg Dulin <oleg.du...@gmail.com>
>To: users@activemq.apache.org 
>Sent: Tuesday, September 11, 2012 2:35 PM
>Subject: Re: 5.5.1 ActiveMQ freezes, why ?
> 
>This seems to be related to the 2000 limit on the linkedblockingqueue inside 
>of VMTransport…
>
>Where is this configured ?
>
>
>
>On 2012-09-11 18:23:56 +0000, Oleg Dulin said:
>
>> Here is the stack trace:
>> 
>> One thread:
>> 
>> Name: LS:IndexItemQueue:2
>> State: BLOCKED on java.lang.Object@699b7e6 owned by: LS:IndexItemQueue:8
>> Total blocked: 42,886  Total waited: 27,663
>> 
>> Stack trace:
>>  org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1698)
>> org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:231)
>>  
>> org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:241)
>>  
>> 
>> The other thread:
>> 
>> ame: LS:IndexItemQueue:8
>> State: WAITING on 
>> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject@55f8606c
>>  
>> Total blocked: 32,969  Total waited: 20,914
>> 
>> Stack trace:
>>  sun.misc.Unsafe.park(Native Method)
>> java.util.concurrent.locks.LockSupport.park(LockSupport.java:156)
>> java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:1987)
>>  
>> java.util.concurrent.LinkedBlockingQueue.put(LinkedBlockingQueue.java:306)
>> org.apache.activemq.transport.vm.VMTransport.oneway(VMTransport.java:94)
>> org.apache.activemq.transport.MutexTransport.oneway(MutexTransport.java:40)
>>    - locked java.lang.Object@6e0f1ea9
>> org.apache.activemq.transport.ResponseCorrelator.oneway(ResponseCorrelator.java:60)
>>  
>> org.apache.activemq.ActiveMQConnection.doAsyncSendPacket(ActiveMQConnection.java:1265)
>>  
>> 
>> 
>> Here is my config:
>> 
>>         <broker xmlns="http://activemq.apache.org/schema/core";
>>                 brokerName="localhost" dataDirectory="./activemq-data"
>>                 destroyApplicationContextOnStop="true" persistent="true" 
>>useJmx="true">
>> ...
>>                <destinationPolicy>
>>                         <policyMap>
>>                                 <policyEntries>
>>                                         <policyEntry topic=">" 
>>producerFlowControl="false"
>>                                                 memoryLimit="512mb">
>>                                                 <!-- pendingSubscriberPolicy>
>>                                                         <fileCursor />
>>                                                 </pendingSubscriberPolicy -->
>>                                         </policyEntry>
>>                                         <policyEntry queue=">" 
>>producerFlowControl="false"
>>                                                 memoryLimit="512mb">
>>                                                 <!-- Use VM cursor for 
>>better latency For more information, see: 
>>http://activemq.apache.org/message-cursors.html -->
>>                                                 <!-- pendingQueuePolicy>
>>                                                         <fileQueueCursor />
>>                                                 </pendingQueuePolicy -->
>>                                         </policyEntry>
>>                                 </policyEntries>
>>                         </policyMap>
>>                 </destinationPolicy>
>> …
>>  <networkConnectors>
>>                         <networkConnector name="connector2.2"
>>                                 uri="static:(tcp://.……:3000)" />
>>                 </networkConnectors>
>> 
>> 
>>                 <persistenceAdapter>
>>                         <kahaDB 
>>directory="${activemq.base}/activemq-data/kahadb" />
>>                 </persistenceAdapter>
>> 
>> 
>> Any ideas ?
>
>
>-- Regards,
>Oleg Dulin
>NYC Java Big Data Engineer
>http://www.olegdulin.com/
>
>
>
>
>

Reply via email to