[jira] [Created] (AMQ-5310) activemq-client - Throws IllegalStateException in receive method which should be a JMSException
Claus Ibsen created AMQ-5310: Summary: activemq-client - Throws IllegalStateException in receive method which should be a JMSException Key: AMQ-5310 URL: https://issues.apache.org/jira/browse/AMQ-5310 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Claus Ibsen Assignee: Claus Ibsen Priority: Critical Fix For: 5.11.0 There is a change in activemq-client in the receive method, where it does a checkClosed call that throws an IllegalStateException which is not supposed according to JMS spec. This causes camel-jms / spring jms to not shutdown nicely and causes the JMS listener to hang, and also other side-effects. For example the camel example pojo messaging demonstrates that. Just start the example according to its readme, and then shutdown the JVM with ctrl + c, and it hangs {code} [Thu Aug 07 10:33:27 CEST 2014]; root of context hierarchy] 2014-08-07 10:33:42,965 [Thread-1 ] INFO SpringCamelContext - Apache Camel 2.14-SNAPSHOT (CamelContext: camel-1) is shutting down 2014-08-07 10:33:42,971 [sonnel.records]] WARN ultJmsMessageListenerContainer - Setup of JMS message listener invoker failed for destination 'personnel.records' - trying to recover. Cause: The Consumer is closed javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:861) at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:618) at org.apache.activemq.jms.pool.PooledMessageConsumer.receive(PooledMessageConsumer.java:67) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:430) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:310) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1101) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1093) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:990) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG BeanComponent - Clearing BeanInfo cache[size=2, hits=0, misses=2, evicted=0] 2014-08-07 10:33:42,975 [sonnel.records]] ERROR ultJmsMessageListenerContainer - Could not refresh JMS Connection for destination 'personnel.records' - retrying in 5000 ms. Cause: null java.lang.NullPointerException at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:392) at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:885) at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:861) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1012) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG TimerListenerManager - Removed TimerListener: org.apache.camel.management.mbean.ManagedCamelContext@2a2bc16 {code} As you can see from this stacktrace there is a NPE error inside spring jms which causes it not to shutdown correctly also. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (AMQ-5310) activemq-client - Throws IllegalStateException in receive method which should be a JMSException
[ https://issues.apache.org/jira/browse/AMQ-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14089012#comment-14089012 ] Claus Ibsen commented on AMQ-5310: -- The API on receive is http://docs.oracle.com/javaee/6/api/javax/jms/MessageConsumer.html#receive(long) Throws: JMSException - if the JMS provider fails to receive the next message due to some internal error. Though you can argue that if the consumer is closed is that an internal error? And should a runtime exception be thrown for other kind of exceptions? Nevertheless we got a critical issue as camel-jms / spring jms / cannot shutdown reliably due changes in ActiveMQ. activemq-client - Throws IllegalStateException in receive method which should be a JMSException --- Key: AMQ-5310 URL: https://issues.apache.org/jira/browse/AMQ-5310 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Claus Ibsen Assignee: Claus Ibsen Priority: Critical Fix For: 5.11.0 There is a change in activemq-client in the receive method, where it does a checkClosed call that throws an IllegalStateException which is not supposed according to JMS spec. This causes camel-jms / spring jms to not shutdown nicely and causes the JMS listener to hang, and also other side-effects. For example the camel example pojo messaging demonstrates that. Just start the example according to its readme, and then shutdown the JVM with ctrl + c, and it hangs {code} [Thu Aug 07 10:33:27 CEST 2014]; root of context hierarchy] 2014-08-07 10:33:42,965 [Thread-1 ] INFO SpringCamelContext - Apache Camel 2.14-SNAPSHOT (CamelContext: camel-1) is shutting down 2014-08-07 10:33:42,971 [sonnel.records]] WARN ultJmsMessageListenerContainer - Setup of JMS message listener invoker failed for destination 'personnel.records' - trying to recover. Cause: The Consumer is closed javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:861) at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:618) at org.apache.activemq.jms.pool.PooledMessageConsumer.receive(PooledMessageConsumer.java:67) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:430) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:310) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1101) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1093) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:990) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG BeanComponent - Clearing BeanInfo cache[size=2, hits=0, misses=2, evicted=0] 2014-08-07 10:33:42,975 [sonnel.records]] ERROR ultJmsMessageListenerContainer - Could not refresh JMS Connection for destination 'personnel.records' - retrying in 5000 ms. Cause: null java.lang.NullPointerException at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:392) at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:885) at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:861) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1012) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG TimerListenerManager - Removed TimerListener:
[jira] [Commented] (AMQ-5310) activemq-client - Throws IllegalStateException in receive method which should be a JMSException
[ https://issues.apache.org/jira/browse/AMQ-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14089063#comment-14089063 ] Claus Ibsen commented on AMQ-5310: -- We can help on this problem in camel-jms to detect CamelContext is being stopped and more quickly disallow the spring message listener container to run, and therefore for it to not try to refresh and re-create the connection which will cause activemq-client to throw that exception - a NPE exception inside spring-jms in a final method we cannot change. activemq-client - Throws IllegalStateException in receive method which should be a JMSException --- Key: AMQ-5310 URL: https://issues.apache.org/jira/browse/AMQ-5310 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Claus Ibsen Assignee: Claus Ibsen Priority: Critical Fix For: 5.11.0 There is a change in activemq-client in the receive method, where it does a checkClosed call that throws an IllegalStateException which is not supposed according to JMS spec. This causes camel-jms / spring jms to not shutdown nicely and causes the JMS listener to hang, and also other side-effects. For example the camel example pojo messaging demonstrates that. Just start the example according to its readme, and then shutdown the JVM with ctrl + c, and it hangs {code} [Thu Aug 07 10:33:27 CEST 2014]; root of context hierarchy] 2014-08-07 10:33:42,965 [Thread-1 ] INFO SpringCamelContext - Apache Camel 2.14-SNAPSHOT (CamelContext: camel-1) is shutting down 2014-08-07 10:33:42,971 [sonnel.records]] WARN ultJmsMessageListenerContainer - Setup of JMS message listener invoker failed for destination 'personnel.records' - trying to recover. Cause: The Consumer is closed javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:861) at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:618) at org.apache.activemq.jms.pool.PooledMessageConsumer.receive(PooledMessageConsumer.java:67) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:430) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:310) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1101) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1093) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:990) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG BeanComponent - Clearing BeanInfo cache[size=2, hits=0, misses=2, evicted=0] 2014-08-07 10:33:42,975 [sonnel.records]] ERROR ultJmsMessageListenerContainer - Could not refresh JMS Connection for destination 'personnel.records' - retrying in 5000 ms. Cause: null java.lang.NullPointerException at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:392) at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:885) at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:861) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1012) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG TimerListenerManager - Removed TimerListener: org.apache.camel.management.mbean.ManagedCamelContext@2a2bc16 {code} As you can see from this stacktrace there is a NPE error
[jira] [Commented] (AMQ-5310) activemq-client - Throws IllegalStateException in receive method which should be a JMSException
[ https://issues.apache.org/jira/browse/AMQ-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14089076#comment-14089076 ] Claus Ibsen commented on AMQ-5310: -- Logged a ticket to improve shutdown quicker on the camel-jms side https://issues.apache.org/jira/browse/CAMEL-7667 activemq-client - Throws IllegalStateException in receive method which should be a JMSException --- Key: AMQ-5310 URL: https://issues.apache.org/jira/browse/AMQ-5310 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Claus Ibsen Assignee: Claus Ibsen Priority: Critical Fix For: 5.11.0 There is a change in activemq-client in the receive method, where it does a checkClosed call that throws an IllegalStateException which is not supposed according to JMS spec. This causes camel-jms / spring jms to not shutdown nicely and causes the JMS listener to hang, and also other side-effects. For example the camel example pojo messaging demonstrates that. Just start the example according to its readme, and then shutdown the JVM with ctrl + c, and it hangs {code} [Thu Aug 07 10:33:27 CEST 2014]; root of context hierarchy] 2014-08-07 10:33:42,965 [Thread-1 ] INFO SpringCamelContext - Apache Camel 2.14-SNAPSHOT (CamelContext: camel-1) is shutting down 2014-08-07 10:33:42,971 [sonnel.records]] WARN ultJmsMessageListenerContainer - Setup of JMS message listener invoker failed for destination 'personnel.records' - trying to recover. Cause: The Consumer is closed javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:861) at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:618) at org.apache.activemq.jms.pool.PooledMessageConsumer.receive(PooledMessageConsumer.java:67) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:430) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:310) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1101) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1093) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:990) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG BeanComponent - Clearing BeanInfo cache[size=2, hits=0, misses=2, evicted=0] 2014-08-07 10:33:42,975 [sonnel.records]] ERROR ultJmsMessageListenerContainer - Could not refresh JMS Connection for destination 'personnel.records' - retrying in 5000 ms. Cause: null java.lang.NullPointerException at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:392) at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:885) at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:861) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1012) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG TimerListenerManager - Removed TimerListener: org.apache.camel.management.mbean.ManagedCamelContext@2a2bc16 {code} As you can see from this stacktrace there is a NPE error inside spring jms which causes it not to shutdown correctly also. -- This message was sent by Atlassian JIRA (v6.2#6252)
Re: activemq-cpp-library-3.8.2 memory leak
On 08/07/2014 01:03 AM, Suresh Bollabathula wrote: Hi I am seeing following memory leak with activemq-cms-3.8.2 consistently. ==7369== 2,604 (48 direct, 2,556 indirect) bytes in 1 blocks are definitely lost in loss record 1,819 of 2,022 ==7369==at 0x4A084CC: operator new(unsigned long) (vg_replace_malloc.c:298) ==7369==by 0xF9CD8A1: decaf::util::concurrent::Futurebool* decaf::util::concurrent::ExecutorService::submitbool(decaf::lang::Runnable*, bool const, bool) (FutureTask.h:408) ==7369==by 0xF9B9CBB: activemq::core::kernels::ActiveMQConsumerKernel::deliverAcks() (ActiveMQConsumerKernel.cpp:1257) ==7369==by 0xF9BAB04: activemq::core::kernels::ActiveMQConsumerKernel::dispose() (ActiveMQConsumerKernel.cpp:845) ==7369==by 0xF9EFC53: activemq::core::kernels::ActiveMQSessionKernel::dispose() (ActiveMQSessionKernel.cpp:379) ==7369==by 0xF9F09A8: activemq::core::kernels::ActiveMQSessionKernel::doClose() (ActiveMQSessionKernel.cpp:306) ==7369==by 0xF9F103F: activemq::core::kernels::ActiveMQSessionKernel::close() (ActiveMQSessionKernel.cpp:296) ==7369==by 0xF962466: activemq::core::ActiveMQSession::close() (ActiveMQSession.cpp:62) ActiveMQConn::terminateConnection(GCONcontext*) (ActiveMQConn.cc:1148) It is observed while calling terminateConnection from my client code as above. Can anyone please help in this regard? -- View this message in context: http://activemq.2283324.n4.nabble.com/activemq-cpp-library-3-8-2-memory-leak-tp4684233.html Sent from the ActiveMQ - Dev mailing list archive at Nabble.com. Try the latest release v3.8.3 to see if the issue has already been resolved. If not then a test that can be added to the current set that will show the error under valgrind will help us to track it down. -- Tim Bish Sr Software Engineer | RedHat Inc. tim.b...@redhat.com | www.fusesource.com | www.redhat.com skype: tabish121 | twitter: @tabish121 blog: http://timbish.blogspot.com/
[jira] [Commented] (AMQ-5310) activemq-client - Throws IllegalStateException in receive method which should be a JMSException
[ https://issues.apache.org/jira/browse/AMQ-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14089111#comment-14089111 ] Claus Ibsen commented on AMQ-5310: -- Ah re-read the java doc api, and it clearly states that we should return null if the consumer is closed Returns: the next message produced for this message consumer, or null if this message consumer is concurrently closed activemq-client - Throws IllegalStateException in receive method which should be a JMSException --- Key: AMQ-5310 URL: https://issues.apache.org/jira/browse/AMQ-5310 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Claus Ibsen Assignee: Claus Ibsen Priority: Critical Fix For: 5.11.0 There is a change in activemq-client in the receive method, where it does a checkClosed call that throws an IllegalStateException which is not supposed according to JMS spec. This causes camel-jms / spring jms to not shutdown nicely and causes the JMS listener to hang, and also other side-effects. For example the camel example pojo messaging demonstrates that. Just start the example according to its readme, and then shutdown the JVM with ctrl + c, and it hangs {code} [Thu Aug 07 10:33:27 CEST 2014]; root of context hierarchy] 2014-08-07 10:33:42,965 [Thread-1 ] INFO SpringCamelContext - Apache Camel 2.14-SNAPSHOT (CamelContext: camel-1) is shutting down 2014-08-07 10:33:42,971 [sonnel.records]] WARN ultJmsMessageListenerContainer - Setup of JMS message listener invoker failed for destination 'personnel.records' - trying to recover. Cause: The Consumer is closed javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:861) at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:618) at org.apache.activemq.jms.pool.PooledMessageConsumer.receive(PooledMessageConsumer.java:67) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:430) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:310) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1101) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1093) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:990) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG BeanComponent - Clearing BeanInfo cache[size=2, hits=0, misses=2, evicted=0] 2014-08-07 10:33:42,975 [sonnel.records]] ERROR ultJmsMessageListenerContainer - Could not refresh JMS Connection for destination 'personnel.records' - retrying in 5000 ms. Cause: null java.lang.NullPointerException at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:392) at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:885) at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:861) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1012) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG TimerListenerManager - Removed TimerListener: org.apache.camel.management.mbean.ManagedCamelContext@2a2bc16 {code} As you can see from this stacktrace there is a NPE error inside spring jms which causes it not to shutdown correctly also. -- This message was sent by Atlassian JIRA (v6.2#6252)
Jenkins build became unstable: ActiveMQ » ActiveMQ :: STOMP Protocol #1499
See https://builds.apache.org/job/ActiveMQ/org.apache.activemq$activemq-stomp/1499/
Jenkins build became unstable: ActiveMQ » ActiveMQ :: RA #1499
See https://builds.apache.org/job/ActiveMQ/org.apache.activemq$activemq-ra/1499/
[jira] [Updated] (AMQ-5310) activemq-client - Throws IllegalStateException in receive method which should be a JMSException
[ https://issues.apache.org/jira/browse/AMQ-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Claus Ibsen updated AMQ-5310: - Attachment: amq-5310.patch Attached is a patch I got started with. There is also a chance that in the dequeue method we got closed and should return null IMHO. I found that from a stacktrace error I got while testing. activemq-client - Throws IllegalStateException in receive method which should be a JMSException --- Key: AMQ-5310 URL: https://issues.apache.org/jira/browse/AMQ-5310 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Claus Ibsen Assignee: Claus Ibsen Priority: Critical Fix For: 5.11.0 Attachments: amq-5310.patch There is a change in activemq-client in the receive method, where it does a checkClosed call that throws an IllegalStateException which is not supposed according to JMS spec. This causes camel-jms / spring jms to not shutdown nicely and causes the JMS listener to hang, and also other side-effects. For example the camel example pojo messaging demonstrates that. Just start the example according to its readme, and then shutdown the JVM with ctrl + c, and it hangs {code} [Thu Aug 07 10:33:27 CEST 2014]; root of context hierarchy] 2014-08-07 10:33:42,965 [Thread-1 ] INFO SpringCamelContext - Apache Camel 2.14-SNAPSHOT (CamelContext: camel-1) is shutting down 2014-08-07 10:33:42,971 [sonnel.records]] WARN ultJmsMessageListenerContainer - Setup of JMS message listener invoker failed for destination 'personnel.records' - trying to recover. Cause: The Consumer is closed javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:861) at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:618) at org.apache.activemq.jms.pool.PooledMessageConsumer.receive(PooledMessageConsumer.java:67) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:430) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:310) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1101) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1093) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:990) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG BeanComponent - Clearing BeanInfo cache[size=2, hits=0, misses=2, evicted=0] 2014-08-07 10:33:42,975 [sonnel.records]] ERROR ultJmsMessageListenerContainer - Could not refresh JMS Connection for destination 'personnel.records' - retrying in 5000 ms. Cause: null java.lang.NullPointerException at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:392) at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:885) at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:861) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1012) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG TimerListenerManager - Removed TimerListener: org.apache.camel.management.mbean.ManagedCamelContext@2a2bc16 {code} As you can see from this stacktrace there is a NPE error inside spring jms which causes it not to shutdown correctly also. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Created] (AMQ-5311) XAException message should encode the xaErrorCode
Gary Tully created AMQ-5311: --- Summary: XAException message should encode the xaErrorCode Key: AMQ-5311 URL: https://issues.apache.org/jira/browse/AMQ-5311 Project: ActiveMQ Issue Type: Bug Components: Broker, JMS client Affects Versions: 5.10.0 Reporter: Gary Tully Assignee: Gary Tully Fix For: 5.11.0 openwire will only marshall the message string, so an XAException will always be initialised clients side with errorCode=0, which maps to XA_OK or an invalid error code. Appending xaErrorCode:X to the message will allow the XAException.errorCode to be extracted client side and propagated correctly, so a TM can respond to an XAER_NOTA. Currently we set a generic XAER_RMERR which can force the TM to retry. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Created] (AMQ-5312) activemq-pool - Should not log expired connection when the pool is stopped as that causes log floods during shutdown
Claus Ibsen created AMQ-5312: Summary: activemq-pool - Should not log expired connection when the pool is stopped as that causes log floods during shutdown Key: AMQ-5312 URL: https://issues.apache.org/jira/browse/AMQ-5312 Project: ActiveMQ Issue Type: Improvement Components: activemq-pool Affects Versions: 5.10.0 Reporter: Claus Ibsen Assignee: Claus Ibsen Priority: Minor Fix For: 5.11.0 If you shutdown amq client + pool and whatnot, then you may get excessive logs about expired connections, as they are logged at INFO level. Example {code} 2014-08-07 14:23:42,572 [est-broker-2#16] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-5:1,clientId=ID:davsclaus.air-50586-1407414219217-4:1,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-2#17) stopped. 2014-08-07 14:23:42,575 [est-broker-3#32] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-7:1,clientId=ID:davsclaus.air-50586-1407414219217-6:1,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-3#33) stopped. 2014-08-07 14:23:42,575 [test-broker-1#4] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-3:3,clientId=ID:davsclaus.air-50586-1407414219217-2:3,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-1#5) stopped. 2014-08-07 14:23:42,576 [test-broker-1#0] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-3:1,clientId=ID:davsclaus.air-50586-1407414219217-2:1,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-1#1) stopped. 2014-08-07 14:23:42,577 [est-broker-2#18] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-5:2,clientId=ID:davsclaus.air-50586-1407414219217-4:2,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-2#19) stopped. 2014-08-07 14:23:42,577 [est-broker-3#38] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-7:4,clientId=ID:davsclaus.air-50586-1407414219217-6:4,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-3#39) stopped. 2014-08-07 14:23:42,578 [test-broker-1#6] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-3:4,clientId=ID:davsclaus.air-50586-1407414219217-2:4,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-1#7) stopped. 2014-08-07 14:23:42,578 [est-broker-3#36] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-7:3,clientId=ID:davsclaus.air-50586-1407414219217-6:3,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-3#37) stopped. 2014-08-07 14:23:42,579 [test-broker-1#2] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-3:2,clientId=ID:davsclaus.air-50586-1407414219217-2:2,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-1#3) stopped. 2014-08-07 14:23:42,579 [test-broker-1#8] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-3:5,clientId=ID:davsclaus.air-50586-1407414219217-2:5,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-1#9) stopped. 2014-08-07 14:23:42,579 [est-broker-3#34] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-7:2,clientId=ID:davsclaus.air-50586-1407414219217-6:2,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-3#35) stopped. 2014-08-07 14:23:42,580 [est-broker-1#10] INFO PooledConnectionFactory - Expiring connection ActiveMQConnection {id=ID:davsclaus.air-50586-1407414219217-3:6,clientId=ID:davsclaus.air-50586-1407414219217-2:6,started=false} on IOException: org.apache.activemq.transport.TransportDisposedIOException: peer (vm://test-broker-1#11) stopped. 2014-08-07 14:23:42,581 [est-broker-2#20] INFO PooledConnectionFactory - Expiring connection
[jira] [Resolved] (AMQ-5311) XAException message should encode the xaErrorCode
[ https://issues.apache.org/jira/browse/AMQ-5311?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Gary Tully resolved AMQ-5311. - Resolution: Fixed fix in http://git-wip-us.apache.org/repos/asf/activemq/commit/ab1e9c78 XAException message should encode the xaErrorCode - Key: AMQ-5311 URL: https://issues.apache.org/jira/browse/AMQ-5311 Project: ActiveMQ Issue Type: Bug Components: Broker, JMS client Affects Versions: 5.10.0 Reporter: Gary Tully Assignee: Gary Tully Labels: errorCode, xa Fix For: 5.11.0 openwire will only marshall the message string, so an XAException will always be initialised clients side with errorCode=0, which maps to XA_OK or an invalid error code. Appending xaErrorCode:X to the message will allow the XAException.errorCode to be extracted client side and propagated correctly, so a TM can respond to an XAER_NOTA. Currently we set a generic XAER_RMERR which can force the TM to retry. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Created] (AMQ-5313) ActiveMq consumer intermittently hanging after reconnect
Wayne Irwin created AMQ-5313: Summary: ActiveMq consumer intermittently hanging after reconnect Key: AMQ-5313 URL: https://issues.apache.org/jira/browse/AMQ-5313 Project: ActiveMQ Issue Type: Bug Components: JMS client Affects Versions: 5.9.0 Environment: AIX 6.1, AIX 7.1, IBM Java 6, IBM Java 7 Reporter: Wayne Irwin I have run into an intermittent problem with ActiveMQ V5.9.0. The intermittent was tracked down to being a connection error that does not get properly recovered. I have recreated the problem in a very small example by creating a Camel consumer route that retrieves messages from a JMS queue and writes the text message to a log. from(TEST_QUEUE).routeId(TEST_QUEUE).convertBodyTo(String.class) .log(LoggingLevel.INFO, loggerName, Request Received ); The connection string used is failover:(tcp://serverd05.company.com:26093?keepAlive=true)?jms.prefetchPolicy.all=0 Please note that polling is being used when the prefetch size is set to 0. I then use Hawtio on the ActiveMQ broker to add some text messages to the queue. It works fine. I then stop the Client Connector on the ActiveMQ broker side to simulate a broken connection on the consumer side. (The broker must be remote to the consumer or the error will not occur.) The client logs show that an EOFException is caught and the connection is reestablished. The connection also appears on the ActiveMQ broker. it only looks good though. Sending new text messages to the queue will not be processed. They will just sit there. There are no errors or warnings logged on either the consumer or broker servers. Restarting the consumer will cause the messages to get processed. The reconnection only intermittently fails. I find is much more like to occur if 10 minutes pass from the previous message being processed. I turned on trace=yes in the connection string and found the root cause is the PullMessage commands are occasionally not being issued after a reconnect. On cases where it works, the log shows that the PullMessage commands do reinstate. I am wondering if this might be a race condition, as this problem only showed up when the consumer was on fast servers -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Created] (AMQ-5314) LoggingBrokerPlugin doc; configuration variable logSessionEvents not mentioned
Pat Fox created AMQ-5314: Summary: LoggingBrokerPlugin doc; configuration variable logSessionEvents not mentioned Key: AMQ-5314 URL: https://issues.apache.org/jira/browse/AMQ-5314 Project: ActiveMQ Issue Type: Improvement Components: Documentation Affects Versions: 5.10.0 Reporter: Pat Fox Priority: Trivial http://activemq.apache.org/logging-interceptor.html does not mention logSessionEvents . Perhaps the following could be added to logSessionEvents | Events related to adding and removing sessions | true -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Resolved] (AMQ-5314) LoggingBrokerPlugin doc; configuration variable logSessionEvents not mentioned
[ https://issues.apache.org/jira/browse/AMQ-5314?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Timothy Bish resolved AMQ-5314. --- Resolution: Fixed Done, site will regen in a bit LoggingBrokerPlugin doc; configuration variable logSessionEvents not mentioned -- Key: AMQ-5314 URL: https://issues.apache.org/jira/browse/AMQ-5314 Project: ActiveMQ Issue Type: Improvement Components: Documentation Affects Versions: 5.10.0 Reporter: Pat Fox Priority: Trivial http://activemq.apache.org/logging-interceptor.html does not mention logSessionEvents . Perhaps the following could be added to logSessionEvents | Events related to adding and removing sessions | true -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (AMQ-5313) ActiveMq consumer intermittently hanging after reconnect
[ https://issues.apache.org/jira/browse/AMQ-5313?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Wayne Irwin updated AMQ-5313: - Attachment: (was: FailedReconnect.log) ActiveMq consumer intermittently hanging after reconnect Key: AMQ-5313 URL: https://issues.apache.org/jira/browse/AMQ-5313 Project: ActiveMQ Issue Type: Bug Components: JMS client Affects Versions: 5.9.0 Environment: AIX 6.1, AIX 7.1, IBM Java 6, IBM Java 7 Reporter: Wayne Irwin I have run into an intermittent problem with ActiveMQ V5.9.0. The intermittent was tracked down to being a connection error that does not get properly recovered. I have recreated the problem in a very small example by creating a Camel consumer route that retrieves messages from a JMS queue and writes the text message to a log. from(TEST_QUEUE).routeId(TEST_QUEUE).convertBodyTo(String.class) .log(LoggingLevel.INFO, loggerName, Request Received ); The connection string used is failover:(tcp://serverd05.company.com:26093?keepAlive=true)?jms.prefetchPolicy.all=0 Please note that polling is being used when the prefetch size is set to 0. I then use Hawtio on the ActiveMQ broker to add some text messages to the queue. It works fine. I then stop the Client Connector on the ActiveMQ broker side to simulate a broken connection on the consumer side. (The broker must be remote to the consumer or the error will not occur.) The client logs show that an EOFException is caught and the connection is reestablished. The connection also appears on the ActiveMQ broker. it only looks good though. Sending new text messages to the queue will not be processed. They will just sit there. There are no errors or warnings logged on either the consumer or broker servers. Restarting the consumer will cause the messages to get processed. The reconnection only intermittently fails. I find is much more like to occur if 10 minutes pass from the previous message being processed. I turned on trace=yes in the connection string and found the root cause is the PullMessage commands are occasionally not being issued after a reconnect. On cases where it works, the log shows that the PullMessage commands do reinstate. I am wondering if this might be a race condition, as this problem only showed up when the consumer was on fast servers -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (AMQ-5313) ActiveMq consumer intermittently hanging after reconnect
[ https://issues.apache.org/jira/browse/AMQ-5313?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Wayne Irwin updated AMQ-5313: - Attachment: fail.log Log showing PullMessages do not return after handling a reconnect. ActiveMq consumer intermittently hanging after reconnect Key: AMQ-5313 URL: https://issues.apache.org/jira/browse/AMQ-5313 Project: ActiveMQ Issue Type: Bug Components: JMS client Affects Versions: 5.9.0 Environment: AIX 6.1, AIX 7.1, IBM Java 6, IBM Java 7 Reporter: Wayne Irwin Attachments: fail.log I have run into an intermittent problem with ActiveMQ V5.9.0. The intermittent was tracked down to being a connection error that does not get properly recovered. I have recreated the problem in a very small example by creating a Camel consumer route that retrieves messages from a JMS queue and writes the text message to a log. from(TEST_QUEUE).routeId(TEST_QUEUE).convertBodyTo(String.class) .log(LoggingLevel.INFO, loggerName, Request Received ); The connection string used is failover:(tcp://serverd05.company.com:26093?keepAlive=true)?jms.prefetchPolicy.all=0 Please note that polling is being used when the prefetch size is set to 0. I then use Hawtio on the ActiveMQ broker to add some text messages to the queue. It works fine. I then stop the Client Connector on the ActiveMQ broker side to simulate a broken connection on the consumer side. (The broker must be remote to the consumer or the error will not occur.) The client logs show that an EOFException is caught and the connection is reestablished. The connection also appears on the ActiveMQ broker. it only looks good though. Sending new text messages to the queue will not be processed. They will just sit there. There are no errors or warnings logged on either the consumer or broker servers. Restarting the consumer will cause the messages to get processed. The reconnection only intermittently fails. I find is much more like to occur if 10 minutes pass from the previous message being processed. I turned on trace=yes in the connection string and found the root cause is the PullMessage commands are occasionally not being issued after a reconnect. On cases where it works, the log shows that the PullMessage commands do reinstate. I am wondering if this might be a race condition, as this problem only showed up when the consumer was on fast servers -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Resolved] (AMQNET-486) NAnt scripts clean target is too aggressive
[ https://issues.apache.org/jira/browse/AMQNET-486?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Jim Gomes resolved AMQNET-486. -- Resolution: Fixed NAnt scripts clean target is too aggressive --- Key: AMQNET-486 URL: https://issues.apache.org/jira/browse/AMQNET-486 Project: ActiveMQ .Net Issue Type: Bug Reporter: Jim Gomes Assignee: Jim Gomes Priority: Minor Original Estimate: 2h Remaining Estimate: 2h When the 'clean' target is executed, it removes both the debug and release configuration builds. This leads to optimized dependency build problems. The clean should operate is the same way as the build operates by working on only the specified build configurations. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (AMQ-5220) Advisory messages are still empty when received with a Stomp subscription
[ https://issues.apache.org/jira/browse/AMQ-5220?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Timothy Bish updated AMQ-5220: -- Fix Version/s: (was: NEEDS_REVIEW) 5.11.0 Advisory messages are still empty when received with a Stomp subscription - Key: AMQ-5220 URL: https://issues.apache.org/jira/browse/AMQ-5220 Project: ActiveMQ Issue Type: Bug Components: Transport Affects Versions: 5.x Environment: ActiveMQ 5.9.1, Sun Java 1.7.0_51, Ubuntu Linux Reporter: Vladislav Krakhalev Fix For: 5.11.0 The subject of this task similiar as AMQ-2098. Bug still exists, and it can be reproduced according to steps below. This simple script written in PHP uses standard Stomp client {code} $stomp = new \Stomp('tcp://localhost:61613', 'admin', 'admin'); $stomp-subscribe('/topic/stats'); $stomp-begin($transaction = microtime(true)); $status = $stomp-send('/queue/ActiveMQ.Statistics.Destination.testqueue', '', Array('reply-to' = '/topic/stats', 'persistent' = 'true')); $message = $stomp-readFrame(); $stomp-ack($message-headers['message-id']); $stomp-commit($transaction); {code} And in $message we'll have empty body paramter. It's because ActiveMQ returned message without body that's show in a captured packets between ActiveMQ and PHP communication below {code} T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] CONNECT login:admin passcode:admin T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:61613 - 127.0.0.1:53988 [AP] CONNECTED heart-beat:0,0 session:ID:amneziac-59996-1402320672417-5:8 server:ActiveMQ/5.9.1 version:1.0 . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] SUBSCRIBE ack:client destination:/topic/stats activemq.prefetchSize:1 T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] BEGIN transaction:1402321825.9952 T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] SEND reply-to:/topic/stats persistent:true destination:/queue/ActiveMQ.Statistics.Destination.testqueue T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:61613 - 127.0.0.1:53988 [AP] MESSAGE message-id:ID:amneziac-59996-1402320672417-2:1:0:0:8 type:Advisory destination:/topic/stats timestamp:1402321826311 expires:0 priority:4 . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] ACK message-id:ID:amneziac-59996-1402320672417-2:1:0:0:8 T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] COMMIT transaction:1402321825.9952 T 127.0.0.1:53988 - 127.0.0.1:61613 [AFP] . DISCONNECT {code} -- This message was sent by Atlassian JIRA (v6.2#6252)
shared database master/master
Hello, I'd like to know if this architecture is feasible. My main goal is I want to open only ports going out of the internal network and not communications initiated from DMZ. /Scenario of an incoming message/ | D M Z| I N T E R N A L | | | | -- AMQ -- storage --- AMQ -- system | | | | I'm thinking about putting up a shared message store with useLock set to disabled. (ref: http://activemq.apache.org/pluggable-storage-lockers.html#Pluggablestoragelockers-PersistenceAdapters) Could that work? -- View this message in context: http://activemq.2283324.n4.nabble.com/shared-database-master-master-tp4684271.html Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
[jira] [Resolved] (AMQ-5220) Advisory messages are still empty when received with a Stomp subscription
[ https://issues.apache.org/jira/browse/AMQ-5220?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Timothy Bish resolved AMQ-5220. --- Resolution: Fixed Thanks for the patch, applied it with some additional cleanups and tweaks. Advisory messages are still empty when received with a Stomp subscription - Key: AMQ-5220 URL: https://issues.apache.org/jira/browse/AMQ-5220 Project: ActiveMQ Issue Type: Bug Components: Transport Affects Versions: 5.x Environment: ActiveMQ 5.9.1, Sun Java 1.7.0_51, Ubuntu Linux Reporter: Vladislav Krakhalev Fix For: 5.11.0 The subject of this task similiar as AMQ-2098. Bug still exists, and it can be reproduced according to steps below. This simple script written in PHP uses standard Stomp client {code} $stomp = new \Stomp('tcp://localhost:61613', 'admin', 'admin'); $stomp-subscribe('/topic/stats'); $stomp-begin($transaction = microtime(true)); $status = $stomp-send('/queue/ActiveMQ.Statistics.Destination.testqueue', '', Array('reply-to' = '/topic/stats', 'persistent' = 'true')); $message = $stomp-readFrame(); $stomp-ack($message-headers['message-id']); $stomp-commit($transaction); {code} And in $message we'll have empty body paramter. It's because ActiveMQ returned message without body that's show in a captured packets between ActiveMQ and PHP communication below {code} T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] CONNECT login:admin passcode:admin T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:61613 - 127.0.0.1:53988 [AP] CONNECTED heart-beat:0,0 session:ID:amneziac-59996-1402320672417-5:8 server:ActiveMQ/5.9.1 version:1.0 . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] SUBSCRIBE ack:client destination:/topic/stats activemq.prefetchSize:1 T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] BEGIN transaction:1402321825.9952 T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] SEND reply-to:/topic/stats persistent:true destination:/queue/ActiveMQ.Statistics.Destination.testqueue T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:61613 - 127.0.0.1:53988 [AP] MESSAGE message-id:ID:amneziac-59996-1402320672417-2:1:0:0:8 type:Advisory destination:/topic/stats timestamp:1402321826311 expires:0 priority:4 . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] ACK message-id:ID:amneziac-59996-1402320672417-2:1:0:0:8 T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] COMMIT transaction:1402321825.9952 T 127.0.0.1:53988 - 127.0.0.1:61613 [AFP] . DISCONNECT {code} -- This message was sent by Atlassian JIRA (v6.2#6252)
[GitHub] activemq pull request: https://issues.apache.org/jira/browse/AMQ-5...
Github user asfgit closed the pull request at: https://github.com/apache/activemq/pull/41 --- If your project is set up for it, you can reply to this email and have your reply appear on GitHub as well. If your project does not have this feature enabled and wishes so, or if the feature is enabled but not working, please contact infrastructure at infrastruct...@apache.org or file a JIRA ticket with INFRA. ---
[jira] [Commented] (AMQ-5220) Advisory messages are still empty when received with a Stomp subscription
[ https://issues.apache.org/jira/browse/AMQ-5220?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14089559#comment-14089559 ] ASF GitHub Bot commented on AMQ-5220: - Github user asfgit closed the pull request at: https://github.com/apache/activemq/pull/41 Advisory messages are still empty when received with a Stomp subscription - Key: AMQ-5220 URL: https://issues.apache.org/jira/browse/AMQ-5220 Project: ActiveMQ Issue Type: Bug Components: Transport Affects Versions: 5.x Environment: ActiveMQ 5.9.1, Sun Java 1.7.0_51, Ubuntu Linux Reporter: Vladislav Krakhalev Fix For: 5.11.0 The subject of this task similiar as AMQ-2098. Bug still exists, and it can be reproduced according to steps below. This simple script written in PHP uses standard Stomp client {code} $stomp = new \Stomp('tcp://localhost:61613', 'admin', 'admin'); $stomp-subscribe('/topic/stats'); $stomp-begin($transaction = microtime(true)); $status = $stomp-send('/queue/ActiveMQ.Statistics.Destination.testqueue', '', Array('reply-to' = '/topic/stats', 'persistent' = 'true')); $message = $stomp-readFrame(); $stomp-ack($message-headers['message-id']); $stomp-commit($transaction); {code} And in $message we'll have empty body paramter. It's because ActiveMQ returned message without body that's show in a captured packets between ActiveMQ and PHP communication below {code} T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] CONNECT login:admin passcode:admin T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:61613 - 127.0.0.1:53988 [AP] CONNECTED heart-beat:0,0 session:ID:amneziac-59996-1402320672417-5:8 server:ActiveMQ/5.9.1 version:1.0 . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] SUBSCRIBE ack:client destination:/topic/stats activemq.prefetchSize:1 T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] BEGIN transaction:1402321825.9952 T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] SEND reply-to:/topic/stats persistent:true destination:/queue/ActiveMQ.Statistics.Destination.testqueue T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:61613 - 127.0.0.1:53988 [AP] MESSAGE message-id:ID:amneziac-59996-1402320672417-2:1:0:0:8 type:Advisory destination:/topic/stats timestamp:1402321826311 expires:0 priority:4 . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] ACK message-id:ID:amneziac-59996-1402320672417-2:1:0:0:8 T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] . T 127.0.0.1:53988 - 127.0.0.1:61613 [AP] COMMIT transaction:1402321825.9952 T 127.0.0.1:53988 - 127.0.0.1:61613 [AFP] . DISCONNECT {code} -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (AMQ-5313) ActiveMq consumer intermittently hanging after reconnect
[ https://issues.apache.org/jira/browse/AMQ-5313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14089587#comment-14089587 ] Peter Minearo commented on AMQ-5313: After reading up on this, we have seen a similar problem, possibly? http://activemq.2283324.n4.nabble.com/JMS-to-JMS-Bridge-Connection-td4684129.html ActiveMq consumer intermittently hanging after reconnect Key: AMQ-5313 URL: https://issues.apache.org/jira/browse/AMQ-5313 Project: ActiveMQ Issue Type: Bug Components: JMS client Affects Versions: 5.9.0 Environment: AIX 6.1, AIX 7.1, IBM Java 6, IBM Java 7 Reporter: Wayne Irwin Attachments: fail.log I have run into an intermittent problem with ActiveMQ V5.9.0. The intermittent was tracked down to being a connection error that does not get properly recovered. I have recreated the problem in a very small example by creating a Camel consumer route that retrieves messages from a JMS queue and writes the text message to a log. from(TEST_QUEUE).routeId(TEST_QUEUE).convertBodyTo(String.class) .log(LoggingLevel.INFO, loggerName, Request Received ); The connection string used is failover:(tcp://serverd05.company.com:26093?keepAlive=true)?jms.prefetchPolicy.all=0 Please note that polling is being used when the prefetch size is set to 0. I then use Hawtio on the ActiveMQ broker to add some text messages to the queue. It works fine. I then stop the Client Connector on the ActiveMQ broker side to simulate a broken connection on the consumer side. (The broker must be remote to the consumer or the error will not occur.) The client logs show that an EOFException is caught and the connection is reestablished. The connection also appears on the ActiveMQ broker. it only looks good though. Sending new text messages to the queue will not be processed. They will just sit there. There are no errors or warnings logged on either the consumer or broker servers. Restarting the consumer will cause the messages to get processed. The reconnection only intermittently fails. I find is much more like to occur if 10 minutes pass from the previous message being processed. I turned on trace=yes in the connection string and found the root cause is the PullMessage commands are occasionally not being issued after a reconnect. On cases where it works, the log shows that the PullMessage commands do reinstate. I am wondering if this might be a race condition, as this problem only showed up when the consumer was on fast servers -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (AMQ-5313) ActiveMq consumer intermittently hanging after reconnect
[ https://issues.apache.org/jira/browse/AMQ-5313?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14089739#comment-14089739 ] Wayne Irwin commented on AMQ-5313: -- I have read through the referenced JMS-to-JMS-Bridge-Conenction article, but I don't think it is related, although what is in common is it is triggered by a broken connection. In this JIRA scope the reconnection is made successfully and remains connected as expected. The connection can be explored with JMX on both the consumer and broker sides. The only problem is the PullMessage command is never issued after the reconnect, so no actual messages are pulled. The keepAlive=true option is used and the keepAlive commands are sent across the connection with no problem. The root problem is something is intermittently not happening to establish the issuing of PullMessage commands after a reconnect ActiveMq consumer intermittently hanging after reconnect Key: AMQ-5313 URL: https://issues.apache.org/jira/browse/AMQ-5313 Project: ActiveMQ Issue Type: Bug Components: JMS client Affects Versions: 5.9.0 Environment: AIX 6.1, AIX 7.1, IBM Java 6, IBM Java 7 Reporter: Wayne Irwin Attachments: fail.log I have run into an intermittent problem with ActiveMQ V5.9.0. The intermittent was tracked down to being a connection error that does not get properly recovered. I have recreated the problem in a very small example by creating a Camel consumer route that retrieves messages from a JMS queue and writes the text message to a log. from(TEST_QUEUE).routeId(TEST_QUEUE).convertBodyTo(String.class) .log(LoggingLevel.INFO, loggerName, Request Received ); The connection string used is failover:(tcp://serverd05.company.com:26093?keepAlive=true)?jms.prefetchPolicy.all=0 Please note that polling is being used when the prefetch size is set to 0. I then use Hawtio on the ActiveMQ broker to add some text messages to the queue. It works fine. I then stop the Client Connector on the ActiveMQ broker side to simulate a broken connection on the consumer side. (The broker must be remote to the consumer or the error will not occur.) The client logs show that an EOFException is caught and the connection is reestablished. The connection also appears on the ActiveMQ broker. it only looks good though. Sending new text messages to the queue will not be processed. They will just sit there. There are no errors or warnings logged on either the consumer or broker servers. Restarting the consumer will cause the messages to get processed. The reconnection only intermittently fails. I find is much more like to occur if 10 minutes pass from the previous message being processed. I turned on trace=yes in the connection string and found the root cause is the PullMessage commands are occasionally not being issued after a reconnect. On cases where it works, the log shows that the PullMessage commands do reinstate. I am wondering if this might be a race condition, as this problem only showed up when the consumer was on fast servers -- This message was sent by Atlassian JIRA (v6.2#6252)
DSFR and ActiveMQ on Windows (Distributed File System Replication)
Hi, I am trying to design replicated file system for large cluster. Replicated LeveDb was the first option but I want to try other replication solutions. Has anyone tried DSFR in windows server with ActiveMQ ? How does file locking works in ActiveMQ ? Can I just replicate Leveldb / KahaDb folder and states are replicated ? Thanks, SN -- View this message in context: http://activemq.2283324.n4.nabble.com/DSFR-and-ActiveMQ-on-Windows-Distributed-File-System-Replication-tp4684285.html Sent from the ActiveMQ - Dev mailing list archive at Nabble.com.
Build failed in Jenkins: ActiveMQ-Trunk-Deploy » ActiveMQ :: Performance Test Plugin #1022
See https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/1022/ -- [INFO] [INFO] [INFO] Building ActiveMQ :: Performance Test Plugin 5.11-SNAPSHOT [INFO] [INFO] [INFO] --- maven-clean-plugin:2.5:clean (default-clean) @ activemq-perf-maven-plugin --- [INFO] Deleting https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/target [INFO] [INFO] --- maven-enforcer-plugin:1.0.1:enforce (default) @ activemq-perf-maven-plugin --- [INFO] [INFO] --- maven-bundle-plugin:2.3.7:cleanVersions (cleanVersions) @ activemq-perf-maven-plugin --- [INFO] [INFO] --- maven-plugin-plugin:3.1:descriptor (default-descriptor) @ activemq-perf-maven-plugin --- [INFO] Using 'UTF-8' encoding to read mojo metadata. [INFO] Applying mojo extractor for language: java-annotations [INFO] Mojo extractor for language: java-annotations found 0 mojo descriptors. [INFO] Applying mojo extractor for language: java [INFO] Mojo extractor for language: java found 3 mojo descriptors. [INFO] Applying mojo extractor for language: bsh [INFO] Mojo extractor for language: bsh found 0 mojo descriptors. [INFO] [INFO] --- maven-remote-resources-plugin:1.3:process (default) @ activemq-perf-maven-plugin --- [INFO] [INFO] --- maven-resources-plugin:2.5:resources (default-resources) @ activemq-perf-maven-plugin --- [debug] execute contextualize [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] Copying 1 resource [INFO] Copying 3 resources [INFO] [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ activemq-perf-maven-plugin --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 43 source files to https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/target/classes [WARNING] https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/src/main/java/org/apache/activemq/tool/spi/ClassLoaderSPIConnectionFactory.java:[60,35] toURL() in java.io.File has been deprecated [WARNING] https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/src/main/java/org/apache/activemq/tool/spi/ClassLoaderSPIConnectionFactory.java:[67,54] toURL() in java.io.File has been deprecated [WARNING] https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/src/main/java/org/apache/activemq/tool/properties/ReflectionUtil.java:[74,48] non-varargs call of varargs method with inexact argument type for last parameter; cast to java.lang.Object for a varargs call cast to java.lang.Object[] for a non-varargs call and to suppress this warning [WARNING] https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/src/main/java/org/apache/activemq/tool/properties/ReflectionUtil.java:[205,77] non-varargs call of varargs method with inexact argument type for last parameter; cast to java.lang.Object for a varargs call cast to java.lang.Object[] for a non-varargs call and to suppress this warning [WARNING] https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/src/main/java/org/apache/activemq/tool/properties/ReflectionUtil.java:[215,80] non-varargs call of varargs method with inexact argument type for last parameter; cast to java.lang.Object for a varargs call cast to java.lang.Object[] for a non-varargs call and to suppress this warning [WARNING] https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/src/main/java/org/apache/activemq/maven/ProducerMojo.java: Some input files use unchecked or unsafe operations. [WARNING] https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/src/main/java/org/apache/activemq/maven/ProducerMojo.java: Recompile with -Xlint:unchecked for details. [INFO] [INFO] --- maven-resources-plugin:2.5:testResources (default-testResources) @ activemq-perf-maven-plugin --- [debug] execute contextualize [INFO] Using 'UTF-8' encoding to copy filtered resources. [INFO] skip non existing resourceDirectory https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/org.apache.activemq.tooling$activemq-perf-maven-plugin/ws/src/test/resources [INFO] Copying 3 resources [INFO] [INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ activemq-perf-maven-plugin --- [INFO] Changes detected - recompiling the module! [INFO] Compiling 4 source files to
Build failed in Jenkins: ActiveMQ-Trunk-Deploy #1022
See https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/1022/changes Changes: [tmielke] https://issues.apache.org/jira/browse/AMQ-5304 - still missing unit test case [tmielke] https://issues.apache.org/jira/browse/AMQ-5304 - applying groupClass to tempDestinationAuthorizationEntry [gtully] include mqtt transport in rar [gtully] https://issues.apache.org/jira/browse/AMQ-5311 - encode xaErrorCode in xaexception message [claus.ibsen] AMQ-5312: Reduce logging noise for activemq-pool if its stopped. [tabish121] https://issues.apache.org/jira/browse/AMQ-5220 [tabish121] Fix test failure under Java 8. Root cause is in CombinationTestSupport -- [...truncated 14695 lines...] [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-runtime-config/target/activemq-runtime-config-5.11-SNAPSHOT-sources.jar to org.apache.activemq/activemq-runtime-config/5.11-20140808.003558-58/activemq-runtime-config-5.11-20140808.003558-58-sources.jar [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-runtime-config/target/activemq-runtime-config-5.11-SNAPSHOT-javadoc.jar to org.apache.activemq/activemq-runtime-config/5.11-20140808.003558-58/activemq-runtime-config-5.11-20140808.003558-58-javadoc.jar Sending artifact delta relative to ActiveMQ-Trunk-Deploy ? ActiveMQ :: Runtime Configuration #1021 Archived 4 artifacts Archive block size is 32768 Received 0 blocks and 24182925 bytes Compression is 0.0% Took 27 sec [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-pool/pom.xml to org.apache.activemq/activemq-pool/5.11-SNAPSHOT/activemq-pool-5.11-SNAPSHOT.pom [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-pool/target/activemq-pool-5.11-SNAPSHOT.jar to org.apache.activemq/activemq-pool/5.11-20140808.003001-58/activemq-pool-5.11-20140808.003001-58.jar [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-pool/target/activemq-pool-5.11-SNAPSHOT-sources.jar to org.apache.activemq/activemq-pool/5.11-20140808.003001-58/activemq-pool-5.11-20140808.003001-58-sources.jar [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-pool/target/activemq-pool-5.11-SNAPSHOT-javadoc.jar to org.apache.activemq/activemq-pool/5.11-20140808.003001-58/activemq-pool-5.11-20140808.003001-58-javadoc.jar Sending artifact delta relative to ActiveMQ-Trunk-Deploy ? ActiveMQ :: Pool #1021 Archived 4 artifacts Archive block size is 32768 Received 0 blocks and 114650 bytes Compression is 0.0% Took 2.5 sec [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-stomp/pom.xml to org.apache.activemq/activemq-stomp/5.11-SNAPSHOT/activemq-stomp-5.11-SNAPSHOT.pom [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-stomp/target/activemq-stomp-5.11-SNAPSHOT.jar to org.apache.activemq/activemq-stomp/5.11-20140808.002740-58/activemq-stomp-5.11-20140808.002740-58.jar [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-stomp/target/activemq-stomp-5.11-SNAPSHOT-sources.jar to org.apache.activemq/activemq-stomp/5.11-20140808.002740-58/activemq-stomp-5.11-20140808.002740-58-sources.jar [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-stomp/target/activemq-stomp-5.11-SNAPSHOT-javadoc.jar to org.apache.activemq/activemq-stomp/5.11-20140808.002740-58/activemq-stomp-5.11-20140808.002740-58-javadoc.jar Sending artifact delta relative to ActiveMQ-Trunk-Deploy ? ActiveMQ :: STOMP Protocol #1021 Archived 4 artifacts Archive block size is 32768 Received 0 blocks and 549748 bytes Compression is 0.0% Took 0.33 sec [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-run/dependency-reduced-pom.xml to org.apache.activemq/activemq-run/5.11-SNAPSHOT/activemq-run-5.11-SNAPSHOT.pom [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-run/target/activemq-run-5.11-SNAPSHOT.jar to org.apache.activemq/activemq-run/5.11-20140808.003418-58/activemq-run-5.11-20140808.003418-58.jar Sending artifact delta relative to ActiveMQ-Trunk-Deploy ? ActiveMQ :: Run Jar #1021 Archived 2 artifacts Archive block size is 32768 Received 0 blocks and 19043 bytes Compression is 0.0% Took 2.5 sec [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-mqtt/pom.xml to org.apache.activemq/activemq-mqtt/5.11-SNAPSHOT/activemq-mqtt-5.11-SNAPSHOT.pom [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-mqtt/target/activemq-mqtt-5.11-SNAPSHOT.jar to org.apache.activemq/activemq-mqtt/5.11-20140808.002757-58/activemq-mqtt-5.11-20140808.002757-58.jar [JENKINS] Archiving https://builds.apache.org/job/ActiveMQ-Trunk-Deploy/ws/activemq-mqtt/target/activemq-mqtt-5.11-SNAPSHOT-sources.jar to
[jira] [Created] (AMQ-5315) Race condition causes NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos
Lee Butts created AMQ-5315: -- Summary: Race condition causes NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos Key: AMQ-5315 URL: https://issues.apache.org/jira/browse/AMQ-5315 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Lee Butts Priority: Critical We have seen the following NPE setting up a demand forwarding bridge {code} java.lang.NullPointerException: null at org.apache.activemq.network.DemandForwardingBridgeSupport.collectBrokerInfos(DemandForwardingBridgeSupport.java:365) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport.access$400(DemandForwardingBridgeSupport.java:105) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:331) [activemq-broker-5.10.0.jar:5.10.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] {code} Code should return if futureRemoteBrokerInfo.get() returns null and fireBridgeFailed() is called -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (AMQ-5315) NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos
[ https://issues.apache.org/jira/browse/AMQ-5315?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lee Butts updated AMQ-5315: --- Summary: NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos (was: Race condition causes NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos) NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos Key: AMQ-5315 URL: https://issues.apache.org/jira/browse/AMQ-5315 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Lee Butts Priority: Critical We have seen the following NPE setting up a demand forwarding bridge {code} java.lang.NullPointerException: null at org.apache.activemq.network.DemandForwardingBridgeSupport.collectBrokerInfos(DemandForwardingBridgeSupport.java:365) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport.access$400(DemandForwardingBridgeSupport.java:105) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:331) [activemq-broker-5.10.0.jar:5.10.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] {code} Code should return if futureRemoteBrokerInfo.get() returns null and fireBridgeFailed() is called -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (AMQ-5315) NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos
[ https://issues.apache.org/jira/browse/AMQ-5315?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14090199#comment-14090199 ] Lee Butts commented on AMQ-5315: Test logs of bridge failure {code} 2014-08-07 23:01:10,467 INFO ceUtil-StartThread-1 o.a.a.broker.BrokerService activemq.broker=testBroker-T1oFi-LDN-1 Apache ActiveMQ 5.10.0 (testBroker-T1oFi-LDN-1, ID:leeimac.local-57747-1407452432914-0:48) is starting 2014-08-07 23:01:10,467 INFO ceUtil-StartThread-1 o.a.a.b.BrokerPluginSupportactivemq.broker=testBroker-T1oFi-LDN-1 Broker Plugin com.x.jms.AbstractActiveMQTest$BrokerEventListener started 2014-08-07 23:01:10,468 INFO ceUtil-StartThread-1 t.TransportServerThreadSupport activemq.broker=testBroker-T1oFi-LDN-1 Listening for connections at: tcp://localhost:57986?socket.tcpNoDelay=truesoTimeout=6closeAsync=false 2014-08-07 23:01:10,468 INFO ceUtil-StartThread-1 o.a.a.b.TransportConnector activemq.broker=testBroker-T1oFi-LDN-1 Connector tcp://localhost:57986?socket.tcpNoDelay=truesoTimeout=6closeAsync=false started 2014-08-07 23:01:10,468 INFO ceUtil-StartThread-1 .a.n.DiscoveryNetworkConnector activemq.broker=testBroker-T1oFi-LDN-1 Establishing network connection from vm://testBroker-T1oFi-LDN-1?async=falsenetwork=true to tcp://localhost:57985?socket.tcpNoDelay=truesoTimeout=6closeAsync=false 2014-08-07 23:01:10,469 INFO ceUtil-StartThread-1 o.a.a.b.TransportConnector activemq.broker=testBroker-T1oFi-LDN-1 Connector vm://testBroker-T1oFi-LDN-1 started 2014-08-07 23:01:10,470 INFO ceUtil-StartThread-1 o.a.a.network.NetworkConnector activemq.broker=testBroker-T1oFi-LDN-1 Network Connector DiscoveryNetworkConnector:NC-LOCAL-localhost:BrokerService[testBroker-T1oFi-LDN-1] started 2014-08-07 23:01:10,470 INFO ceUtil-StartThread-1 .a.n.DiscoveryNetworkConnector activemq.broker=testBroker-T1oFi-LDN-1 Establishing network connection from vm://testBroker-T1oFi-LDN-1?async=falsenetwork=true to failover:(tcp://localhost:57987,tcp://localhost:57988)?nested.socket.tcpNoDelay=truenested.soTimeout=6nested.closeAsync=falserandomize=falsemaxReconnectAttempts=0 2014-08-07 23:01:10,471 INFO ceUtil-StartThread-1 o.a.a.network.NetworkConnector activemq.broker=testBroker-T1oFi-LDN-1 Network Connector DiscoveryNetworkConnector:NC-WAN-NYC-DefaultDynamic-0:BrokerService[testBroker-T1oFi-LDN-1] started 2014-08-07 23:01:10,471 INFO ceUtil-StartThread-1 o.a.a.broker.BrokerService activemq.broker=testBroker-T1oFi-LDN-1 Apache ActiveMQ 5.10.0 (testBroker-T1oFi-LDN-1, ID:leeimac.local-57747-1407452432914-0:48) started 2014-08-07 23:01:10,471 INFO ceUtil-StartThread-1 o.a.a.broker.BrokerService activemq.broker=testBroker-T1oFi-LDN-1 For help or more information please see: http://activemq.apache.org 2014-08-07 23:01:10,471 WARN ceUtil-StartThread-1 o.a.a.broker.BrokerService activemq.broker=testBroker-T1oFi-LDN-1 Store limit is 102400 mb (current store usage is 0 mb). The data directory: /var/folders/zd/s8yvndzs0tb08zq2hbm5h89rgn/T/testBroker-T1oFi-LDN-1/testBroker-T1oFi-LDN-1/KahaDB only has 38816 mb of usable space - resetting to maximum available disk space: 38816 mb 2014-08-07 23:01:10,471 ERROR ActiveMQ Task-1 o.a.a.t.f.FailoverTransportactivemq.broker=testBroker-T1oFi-LDN-1 Failed to connect to [tcp://localhost:57987, tcp://localhost:57988] after: 1 attempt(s) 2014-08-07 23:01:10,472 INFO oker-T1oFi-LDN-1#190 .DemandForwardingBridgeSupport activemq.broker=testBroker-T1oFi-LDN-1 Network connection between vm://testBroker-T1oFi-LDN-1#190 and tcp://localhost/127.0.0.1:57985@57994 (testBroker-T1oFi-LDN-0) has been established. 2014-08-07 23:01:10,472 INFO oker-T1oFi-LDN-1#192 .DemandForwardingBridgeSupport activemq.broker=testBroker-T1oFi-LDN-1 Network connection between vm://testBroker-T1oFi-LDN-1#192 and unconnected shutdown due to a local error: {} java.lang.NullPointerException: null at org.apache.activemq.network.DemandForwardingBridgeSupport.collectBrokerInfos(DemandForwardingBridgeSupport.java:365) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport.access$400(DemandForwardingBridgeSupport.java:105) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:331) [activemq-broker-5.10.0.jar:5.10.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] 2014-08-07 23:01:10,472 INFO -T1oFi-LDN-1] Task-3 .DemandForwardingBridgeSupport
[jira] [Updated] (AMQ-5315) NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos
[ https://issues.apache.org/jira/browse/AMQ-5315?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lee Butts updated AMQ-5315: --- Description: We have seen the following NPE setting up a demand forwarding bridge {code} java.lang.NullPointerException: null at org.apache.activemq.network.DemandForwardingBridgeSupport.collectBrokerInfos(DemandForwardingBridgeSupport.java:365) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport.access$400(DemandForwardingBridgeSupport.java:105) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:331) [activemq-broker-5.10.0.jar:5.10.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] {code} was: We have seen the following NPE setting up a demand forwarding bridge {code} java.lang.NullPointerException: null at org.apache.activemq.network.DemandForwardingBridgeSupport.collectBrokerInfos(DemandForwardingBridgeSupport.java:365) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport.access$400(DemandForwardingBridgeSupport.java:105) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:331) [activemq-broker-5.10.0.jar:5.10.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] {code} Code should return if futureRemoteBrokerInfo.get() returns null and fireBridgeFailed() is called NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos Key: AMQ-5315 URL: https://issues.apache.org/jira/browse/AMQ-5315 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Lee Butts Priority: Critical We have seen the following NPE setting up a demand forwarding bridge {code} java.lang.NullPointerException: null at org.apache.activemq.network.DemandForwardingBridgeSupport.collectBrokerInfos(DemandForwardingBridgeSupport.java:365) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport.access$400(DemandForwardingBridgeSupport.java:105) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:331) [activemq-broker-5.10.0.jar:5.10.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] {code} -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Updated] (AMQ-5315) NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos
[ https://issues.apache.org/jira/browse/AMQ-5315?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Lee Butts updated AMQ-5315: --- Description: We have seen the following NPE setting up a demand forwarding bridge {code} java.lang.NullPointerException: null at org.apache.activemq.network.DemandForwardingBridgeSupport.collectBrokerInfos(DemandForwardingBridgeSupport.java:365) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport.access$400(DemandForwardingBridgeSupport.java:105) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:331) [activemq-broker-5.10.0.jar:5.10.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] {code} This occurred in one of our tests but only under load so seems to be a race condition of some sort. was: We have seen the following NPE setting up a demand forwarding bridge {code} java.lang.NullPointerException: null at org.apache.activemq.network.DemandForwardingBridgeSupport.collectBrokerInfos(DemandForwardingBridgeSupport.java:365) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport.access$400(DemandForwardingBridgeSupport.java:105) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:331) [activemq-broker-5.10.0.jar:5.10.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] {code} NullPointerException in DemandForwardingBridgeSupport.collectBrokerInfos Key: AMQ-5315 URL: https://issues.apache.org/jira/browse/AMQ-5315 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Lee Butts Priority: Critical We have seen the following NPE setting up a demand forwarding bridge {code} java.lang.NullPointerException: null at org.apache.activemq.network.DemandForwardingBridgeSupport.collectBrokerInfos(DemandForwardingBridgeSupport.java:365) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport.access$400(DemandForwardingBridgeSupport.java:105) [activemq-broker-5.10.0.jar:5.10.0] at org.apache.activemq.network.DemandForwardingBridgeSupport$5.run(DemandForwardingBridgeSupport.java:331) [activemq-broker-5.10.0.jar:5.10.0] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_60] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_60] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_60] {code} This occurred in one of our tests but only under load so seems to be a race condition of some sort. -- This message was sent by Atlassian JIRA (v6.2#6252)
[jira] [Commented] (AMQ-5310) activemq-client - Throws IllegalStateException in receive method which should be a JMSException
[ https://issues.apache.org/jira/browse/AMQ-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanelfocusedCommentId=14090277#comment-14090277 ] Claus Ibsen commented on AMQ-5310: -- Lowered to major as current behavior has been like this from the very start. Though we should get this fixed so AMQ is aligned with the JMS spec. [~dejanb] you said you wanted to take a look. I have attached a patch with some fixes. There could be similar issues in other JMS APIs, such as the Session / Connection etc too. activemq-client - Throws IllegalStateException in receive method which should be a JMSException --- Key: AMQ-5310 URL: https://issues.apache.org/jira/browse/AMQ-5310 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Claus Ibsen Assignee: Dejan Bosanac Fix For: 5.11.0 Attachments: amq-5310.patch There is a change in activemq-client in the receive method, where it does a checkClosed call that throws an IllegalStateException which is not supposed according to JMS spec. This causes camel-jms / spring jms to not shutdown nicely and causes the JMS listener to hang, and also other side-effects. For example the camel example pojo messaging demonstrates that. Just start the example according to its readme, and then shutdown the JVM with ctrl + c, and it hangs {code} [Thu Aug 07 10:33:27 CEST 2014]; root of context hierarchy] 2014-08-07 10:33:42,965 [Thread-1 ] INFO SpringCamelContext - Apache Camel 2.14-SNAPSHOT (CamelContext: camel-1) is shutting down 2014-08-07 10:33:42,971 [sonnel.records]] WARN ultJmsMessageListenerContainer - Setup of JMS message listener invoker failed for destination 'personnel.records' - trying to recover. Cause: The Consumer is closed javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:861) at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:618) at org.apache.activemq.jms.pool.PooledMessageConsumer.receive(PooledMessageConsumer.java:67) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:430) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:310) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1101) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1093) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:990) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG BeanComponent - Clearing BeanInfo cache[size=2, hits=0, misses=2, evicted=0] 2014-08-07 10:33:42,975 [sonnel.records]] ERROR ultJmsMessageListenerContainer - Could not refresh JMS Connection for destination 'personnel.records' - retrying in 5000 ms. Cause: null java.lang.NullPointerException at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:392) at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:885) at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:861) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1012) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG TimerListenerManager - Removed TimerListener: org.apache.camel.management.mbean.ManagedCamelContext@2a2bc16 {code} As you can see from this stacktrace there is a NPE error inside spring jms
[jira] [Updated] (AMQ-5310) activemq-client - Throws IllegalStateException in receive method which should be a JMSException
[ https://issues.apache.org/jira/browse/AMQ-5310?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Claus Ibsen updated AMQ-5310: - Priority: Major (was: Critical) activemq-client - Throws IllegalStateException in receive method which should be a JMSException --- Key: AMQ-5310 URL: https://issues.apache.org/jira/browse/AMQ-5310 Project: ActiveMQ Issue Type: Bug Affects Versions: 5.10.0 Reporter: Claus Ibsen Assignee: Claus Ibsen Fix For: 5.11.0 Attachments: amq-5310.patch There is a change in activemq-client in the receive method, where it does a checkClosed call that throws an IllegalStateException which is not supposed according to JMS spec. This causes camel-jms / spring jms to not shutdown nicely and causes the JMS listener to hang, and also other side-effects. For example the camel example pojo messaging demonstrates that. Just start the example according to its readme, and then shutdown the JVM with ctrl + c, and it hangs {code} [Thu Aug 07 10:33:27 CEST 2014]; root of context hierarchy] 2014-08-07 10:33:42,965 [Thread-1 ] INFO SpringCamelContext - Apache Camel 2.14-SNAPSHOT (CamelContext: camel-1) is shutting down 2014-08-07 10:33:42,971 [sonnel.records]] WARN ultJmsMessageListenerContainer - Setup of JMS message listener invoker failed for destination 'personnel.records' - trying to recover. Cause: The Consumer is closed javax.jms.IllegalStateException: The Consumer is closed at org.apache.activemq.ActiveMQMessageConsumer.checkClosed(ActiveMQMessageConsumer.java:861) at org.apache.activemq.ActiveMQMessageConsumer.receive(ActiveMQMessageConsumer.java:618) at org.apache.activemq.jms.pool.PooledMessageConsumer.receive(PooledMessageConsumer.java:67) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveMessage(AbstractPollingMessageListenerContainer.java:430) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.doReceiveAndExecute(AbstractPollingMessageListenerContainer.java:310) at org.springframework.jms.listener.AbstractPollingMessageListenerContainer.receiveAndExecute(AbstractPollingMessageListenerContainer.java:263) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.invokeListener(DefaultMessageListenerContainer.java:1101) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.executeOngoingLoop(DefaultMessageListenerContainer.java:1093) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:990) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG BeanComponent - Clearing BeanInfo cache[size=2, hits=0, misses=2, evicted=0] 2014-08-07 10:33:42,975 [sonnel.records]] ERROR ultJmsMessageListenerContainer - Could not refresh JMS Connection for destination 'personnel.records' - retrying in 5000 ms. Cause: null java.lang.NullPointerException at org.springframework.jms.listener.AbstractJmsListeningContainer.refreshSharedConnection(AbstractJmsListeningContainer.java:392) at org.springframework.jms.listener.DefaultMessageListenerContainer.refreshConnectionUntilSuccessful(DefaultMessageListenerContainer.java:885) at org.springframework.jms.listener.DefaultMessageListenerContainer.recoverAfterListenerSetupFailure(DefaultMessageListenerContainer.java:861) at org.springframework.jms.listener.DefaultMessageListenerContainer$AsyncMessageListenerInvoker.run(DefaultMessageListenerContainer.java:1012) 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) 2014-08-07 10:33:42,975 [Thread-1 ] DEBUG TimerListenerManager - Removed TimerListener: org.apache.camel.management.mbean.ManagedCamelContext@2a2bc16 {code} As you can see from this stacktrace there is a NPE error inside spring jms which causes it not to shutdown correctly also. -- This message was sent by Atlassian JIRA (v6.2#6252)