Uploaded image for project: 'JBoss A-MQ'
  1. JBoss A-MQ
  2. ENTMQ-1880

[A-MQ 6] SelectorAwareVirtualTopicInterceptor throws java.lang.NullPointerException

    XMLWordPrintable

Details

    • Bug
    • Resolution: Done
    • Major
    • JBoss A-MQ 6.3
    • JBoss A-MQ 6.2.1
    • broker
    • None
    • ER3

    Description

      Customer is using SelectorAware VTs. They noticed lost messages and have tested it by doing the following:

      Send 100 message to VirtualTopic
      Validate 100 are pushed onto corresponding Queue
      Restart broker - dont start consumer.
      Send 100 message to VirtualTopic again
      At this point, they see the below exception.
      Once they re-attach the consumer, messages flow again.

      Caused by: javax.jms.JMSException: java.lang.NullPointerException
          at org.apache.activemq.util.JMSExceptionSupport.create(JMSExceptionSupport.java:54)
          at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1398)
          at org.apache.activemq.ActiveMQConnection.syncSendPacket(ActiveMQConnection.java:1324)
          at org.apache.activemq.ActiveMQSession.send(ActiveMQSession.java:1971)
          at org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:288)
          at org.apache.activemq.ActiveMQMessageProducer.send(ActiveMQMessageProducer.java:223)
          at org.apache.activemq.ActiveMQMessageProducerSupport.send(ActiveMQMessageProducerSupport.java:269)
          at org.apache.activemq.ActiveMQTopicPublisher.publish(ActiveMQTopicPublisher.java:146)
      ...
      Caused by: java.lang.NullPointerException
          at org.apache.activemq.broker.region.virtual.SelectorAwareVirtualTopicInterceptor.tryMatchingCachedSubs(SelectorAwareVirtualTopicInterceptor.java:79)
          at org.apache.activemq.broker.region.virtual.SelectorAwareVirtualTopicInterceptor.shouldDispatch(SelectorAwareVirtualTopicInterceptor.java:65)
          at org.apache.activemq.broker.region.virtual.VirtualTopicInterceptor.send(VirtualTopicInterceptor.java:114)
          at org.apache.activemq.broker.region.virtual.VirtualTopicInterceptor.send(VirtualTopicInterceptor.java:67)
          at org.apache.activemq.broker.region.DestinationFilter.send(DestinationFilter.java:132)
          at org.apache.activemq.broker.region.AbstractRegion.send(AbstractRegion.java:419)
          at org.apache.activemq.broker.region.RegionBroker.send(RegionBroker.java:468)
          at org.apache.activemq.broker.jmx.ManagedRegionBroker.send(ManagedRegionBroker.java:296)
          at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:152)
          at org.apache.activemq.broker.CompositeDestinationBroker.send(CompositeDestinationBroker.java:96)
          at org.apache.activemq.broker.TransactionBroker.send(TransactionBroker.java:293)
          at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:152)
          at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:152)
          at org.apache.activemq.security.AuthorizationBroker.send(AuthorizationBroker.java:223)
          at org.apache.activemq.broker.BrokerFilter.send(BrokerFilter.java:152)
          at org.apache.activemq.broker.MutableBrokerFilter.send(MutableBrokerFilter.java:157)
          at org.apache.activemq.broker.TransportConnection.processMessage(TransportConnection.java:546)
          at org.apache.activemq.command.ActiveMQMessage.visit(ActiveMQMessage.java:768)
          at org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:338)
          at org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:188)
          at org.apache.activemq.transport.MutexTransport.onCommand(MutexTransport.java:50)
          at org.apache.activemq.transport.WireFormatNegotiator.onCommand(WireFormatNegotiator.java:113)
          at org.apache.activemq.transport.AbstractInactivityMonitor.onCommand(AbstractInactivityMonitor.java:300)
          at org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
          at org.apache.activemq.transport.tcp.SslTransport.doConsume(SslTransport.java:102)
          at org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:214)
          at org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:196)
          at java.lang.Thread.run(Thread.java:745)
      
      

      Attachments

        Activity

          People

            gtully@redhat.com Gary Tully
            rhn-support-pfox Patrick Fox (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: