Inactivity monitor (or another background task) cause a NullPointerException in 
ActiveMQ
----------------------------------------------------------------------------------------

                 Key: AMQNET-356
                 URL: https://issues.apache.org/jira/browse/AMQNET-356
             Project: ActiveMQ .Net
          Issue Type: Bug
          Components: NMS
    Affects Versions: 1.5.2, 1.5.3
         Environment: Tested with both Active MQ 5.5, 5.6
and ActiveMQ.Net 1.5.2 and 1.5.3.

Broker URI: 
failover:(tcp://127.0.0.1:61616?nms.PrefetchPolicy.queuePrefetch=0&keepAlive=true&wireFormat.TightEncodingEnabled=false&wireFormat.CacheEnabled=false&wireFormat.MaxInactivityDuration=300000)
            Reporter: Frank Gynnild
            Assignee: Jim Gomes
            Priority: Critical


We're running various automatic unit tests that ran fine for ActiveMQ.NMS 
1.5.1, but that always fail
at the same spot when we test with the new 1.5.2 (or latest 1.5.3). Strangely, 
it fails between two
tests, but it didn't used to do that before. Running these two tests alone 
doesn't provoke the situation
so its been hard to isolate it. Since it is consistent, I thought it was best 
to create an
issue here, maybe you have some hints on what's going on. I think it's a bug 
though, because
we're using the failover protocol, yet the connection exception get raised 
through this handler:
{code}
connection.ExceptionListener += ConnectionExceptionListener;
{code}
When using failover, I don't think we ever should see the exception listener 
being called, right?
Only got this information so it's not much:
---
Type: Apache.NMS.NMSConnectionException. Message: Exception of type 
'Apache.NMS.NMSConnectionException' was thrown.
---

*Before* this happens, we also see this in the ActiveMQ broker:

2011-11-23 09:47:18,458 | WARN  | Async error occurred: 
java.lang.NullPointerException | 
org.apache.activemq.broker.TransportConnection.Service | ActiveMQ Transport: 
tcp:///127.0.0.1:54782
java.lang.NullPointerException
        at 
org.apache.activemq.broker.TransportConnection.getConsumerBrokerExchange(TransportConnection.java:1349)
        at 
org.apache.activemq.broker.TransportConnection.processMessageAck(TransportConnection.java:474)
        at org.apache.activemq.command.MessageAck.visit(MessageAck.java:229)
        at 
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:316)
        at 
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:180)
        at 
org.apache.activemq.transport.TransportFilter.onCommand(TransportFilter.java:69)
        at 
org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
        at 
org.apache.activemq.transport.InactivityMonitor.onCommand(InactivityMonitor.java:227)
        at 
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
        at 
org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:223)
        at 
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:205)
        at java.lang.Thread.run(Unknown Source)

Thanks for any ideas on this. I'll be more than happy to test any code, since 
it can be produced every time
with the 1.5.2 release.



--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to