Uploaded image for project: 'ActiveMQ Classic'
  1. ActiveMQ Classic
  2. AMQ-5297

PooledSession with lots of consumers can fail to start fully

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Invalid
    • 5.8.0
    • None
    • JMS client, Pool
    • None
    • 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)

    Description

      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?

      "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)

      <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>

      Attachments

        Activity

          People

            Unassigned Unassigned
            shendley Sam hendley
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: