You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Timothy Bish (JIRA)" <ji...@apache.org> on 2017/05/23 18:10:04 UTC
[jira] [Commented] (AMQ-6682) AMQ client hangs when stopping Spring
DefaultMessageListenerContainer
[ https://issues.apache.org/jira/browse/AMQ-6682?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16021564#comment-16021564 ]
Timothy Bish commented on AMQ-6682:
-----------------------------------
Have you confirmed that consumer close or connection close is being called?
> AMQ client hangs when stopping Spring DefaultMessageListenerContainer
> ---------------------------------------------------------------------
>
> Key: AMQ-6682
> URL: https://issues.apache.org/jira/browse/AMQ-6682
> Project: ActiveMQ
> Issue Type: Bug
> Components: JMS client
> Affects Versions: 5.14.5
> Environment: JDK 1.8.0_112
> spring-jms-4.3.8.RELEASE.jar
> activemq-client-5.14.5.jar
> Reporter: Doug Harmon
>
> When using spring's DefaultMessageListenerContainer (DMLC) to consume messages from AMQ 5.14.5 server, and using prefetch of 0, spring container hangs when shutting down DMLC (e.g. on tomcat server shutdown).
> Applicable 2 threads from spring client app thread dump (logs on separate network so I cannot copy/paste):
> "dmlc-1" ...
> at org.apache.activemq.FifoMessageDispatchChannel.dequeue(FifoMessageDispatchChannel.java:72)
> - locked <> (a java.lang.Object)
> at org.apache.activemq.ActiveMQMessageConsumer.dequeue(ActiveMQMessageConsumer.java:486)
> at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:648)
> "http-bio-exec-11"
> at org.springframework.jms.listener.DefaultMessageListenerContainer.doShutdown(DefaultMessageListenerContainer.java:571)
> ...
> Applicable spring configuration file:
> <bean id="jmsFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
> <property name="brokerURL">
> <value>tcp://localhost:61616?jms.prefetchPolicy.queuePrefetch=0</value>
> </property>
> </bean>
> <bean id="queue" class="org.apache.activemq.command.ActiveMQQueue">
> <constructor-arg index="0" value="myQueue" />
> </bean>
> <bean id="dmlc" class="org.springframework.jms.listener.DefaultMessageListenerContainer">
> <property name="connectionFactory" ref="jmsFactory" />
> <property name="destination" ref="queue" />
> <property name="messageListener" ref="myQueueConsumer" />
> <property name="sessionTransacted" value="true" />
> </bean>
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)