You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@activemq.apache.org by "Nitin (JIRA)" <ji...@apache.org> on 2016/12/02 06:10:59 UTC
[jira] [Commented] (AMQ-1995) Exception "The Consumer is closed" in
multithreaded environment
[ https://issues.apache.org/jira/browse/AMQ-1995?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15714203#comment-15714203 ]
Nitin commented on AMQ-1995:
----------------------------
Hi,
I am using apache-activemq-5.14.1 and i am getting the same error.
Could you kindly assist as how can i resolve it.
com.irdeto.manager.endpoint.activemq.MessageConsumerManager - The Consumer is closed
javax.jms.IllegalStateException: The Consumer is closed
at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:880)
at org.apache.activemq.ActiveMQMessageConsumer.receiveNoWait(ActiveMQMessageConsumer.java:678)
at org.apache.activemq.jms.pool.PooledMessageConsumer.receiveNoWait(PooledMessageConsumer.java:72)
at com.irdeto.manager.endpoint.activemq.MessageConsumerManager$2.run(MessageConsumerManager.java:105)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Thanks in advance
> Exception "The Consumer is closed" in multithreaded environment
> ---------------------------------------------------------------
>
> Key: AMQ-1995
> URL: https://issues.apache.org/jira/browse/AMQ-1995
> Project: ActiveMQ
> Issue Type: Bug
> Components: Broker
> Affects Versions: 5.1.0, 5.2.0
> Environment: Windows XP, JRE 1.5.0_12, 2GB Memory, Dual-core
> Reporter: Martin Haslinger
> Assignee: Gary Tully
> Fix For: 5.2.0
>
>
> I got the following exception when running the TempQueueMemoryTest and increasing number of producer, consumers and messages:
> javax.jms.IllegalStateException: The Consumer is closed
> at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:699)
> at org.apache.activemq.ActiveMQMessageConsumer.getMessageListener(ActiveMQMessageConsumer.java:339)
> at org.apache.activemq.ActiveMQSession.checkMessageListener(ActiveMQSession.java:1864)
> at org.apache.activemq.ActiveMQMessageConsumer.checkMessageListener(ActiveMQMessageConsumer.java:717)
> at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:457)
> at TempQueueMemoryTest$1Producer.run(TempQueueMemoryTest.java:94)
> The error happens at "Message reply = consumer.receive();", the message is not received.
> I increased the number of consumers and produceres to 2 and the number of messages to 5000. When using larger numbers the exception is thrown more often (unpredictable how often exactly). It definitly seems to be a multithreading-related problem because it only happens with multiple threads producing/consuming and the more threads you have the more often it happens.
> Tested with 5.2 RC2.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)