activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Sam hendley (JIRA)" <j...@apache.org>
Subject [jira] [Created] (AMQ-5297) PooledSession with lots of consumers can fail to start fully
Date Wed, 30 Jul 2014 20:06:39 GMT
Sam hendley created AMQ-5297:
--------------------------------

             Summary: PooledSession with lots of consumers can fail to start fully
                 Key: AMQ-5297
                 URL: https://issues.apache.org/jira/browse/AMQ-5297
             Project: ActiveMQ
          Issue Type: Bug
          Components: activemq-pool, JMS client
    Affects Versions: 5.8.0
         Environment: java version "1.7.0_51"
Java(TM) SE Runtime Environment (build 1.7.0_51-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.51-b03, mixed mode)

            Reporter: Sam hendley


We have a case where we are trying to startup 100s of camel routes and it appears to be causing
an issue where the consumer is only partially started and the thread is stuck waiting for
for the consumer to be fully created. The consumer appears to be created on the broker side
so that it is getting messages enqueued and dispatched, just never serviced.

Could this be due to our connection pool being too small? Could we avoid this problem with
asyncSend?

{quote}
"Camel (AppsJVM) thread #28 - JmsConsumer[response.queue]" - Thread t@318
   java.lang.Thread.State: WAITING
	at sun.misc.Unsafe.park(Native Method)
	- parking to wait for <ee029ee> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
	at java.util.concurrent.locks.LockSupport.park(LockSupport.java:186)
	at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2043)
	at java.util.concurrent.ArrayBlockingQueue.take(ArrayBlockingQueue.java:374)
	at org.apache.activemq.transport.FutureResponse.getResult(FutureResponse.java:40)
	at org.apache.activemq.transport.ResponseCorrelator.request(ResponseCorrelator.java:87)
	at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1380)
	at org.apache.activemq.ActiveMQSession.syncSendPacket(ActiveMQSession.java:1912)
	at org.apache.activemq.ActiveMQMessageConsumer.<init>(ActiveMQMessageConsumer.java:273)
	at org.apache.activemq.ActiveMQSession.createConsumer(ActiveMQSession.java:1144)
	at org.apache.activemq.ActiveMQSession.createConsumer(ActiveMQSession.java:1088)
	at org.apache.activemq.ActiveMQSession.createConsumer(ActiveMQSession.java:1001)
	at org.apache.activemq.pool.PooledSession.createConsumer(PooledSession.java:311)
	at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.createConsumer(AbstractPollingMessageListenerContainer.java:503)
	at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.createListenerConsumer(AbstractPollingMessageListenerContainer.java:224)
	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.initResourcesIfNecessary(DefaultMessageListenerContainer.java:1094)
	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1070)
	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1063)
	at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:960)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:744)

   Locked ownable synchronizers:
	- locked <4deb7015> (a java.util.concurrent.ThreadPoolExecutor$Worker)
{quote}

{quote}
<bean id="JMSPooledConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory">

        <property name="maxConnections" value="8" />

        <property name="maximumActiveSessionPerConnection" value="500" />
        <property name="idleTimeout" value="0" />
        <property name="connectionFactory" ref="JMSConnectionFactory" />
    </bean>
{quote}



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message