[ 
https://issues.apache.org/jira/browse/AMQ-5426?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Christopher L. Shannon resolved AMQ-5426.
-----------------------------------------
       Resolution: Fixed
    Fix Version/s: 5.13.4
                   5.14.0

Fix has been applied and I also included a modified version of the test case 
provided to try and catch any issues in the future.   I modified the test to 
run a bit faster (takes about 10 seconds for me now) because in my testing if 
it was going to fail for that run it always failed within the first few 
seconds.  The test case only fails for me about 1/3 of the time before the fix 
was applied so it isn't perfect but it's better than nothing.

> ActiveMQMessageConsumer could run into NPE due to concurrent access to 
> internal state
> -------------------------------------------------------------------------------------
>
>                 Key: AMQ-5426
>                 URL: https://issues.apache.org/jira/browse/AMQ-5426
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: JMS client
>    Affects Versions: 5.8.0, 5.9.1, 5.10.0
>            Reporter: Michael Wong
>            Assignee: Christopher L. Shannon
>            Priority: Minor
>             Fix For: 5.14.0, 5.13.4
>
>         Attachments: AMQ5426Test.java
>
>
> ActiveMQMessageConsumer could run into NPE when the consumer is closing and a 
> message arrived at the same time.
> Here is the stacktrace:
> java.lang.NullPointerException
> at 
> org.apache.activemq.ActiveMQMessageConsumer.ackLater(ActiveMQMessageConsumer.java:979)
> at 
> org.apache.activemq.ActiveMQMessageConsumer.afterMessageIsConsumed(ActiveMQMessageConsumer.java:929)
> at 
> org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:1323)
> at 
> org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:131)
> at 
> org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:202)
> at 
> org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:129)
> at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:47)
> 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:745)



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to