Uploaded image for project: 'ActiveMQ Artemis'
  1. ActiveMQ Artemis
  2. ARTEMIS-55

lack of link context when processing AMQP detach response results in NPE

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.0.0
    • 1.0.0
    • None
    • None

    Description

      When an AMQP 1.0 link (producer/consumer) is detached/closed by the broker with an error, clients must send a response Detach frame. If the link context was not set before the error occurred, this leads to the broker experiencing an NPE while processing the reply.

      java.lang.NullPointerException
      	at org.proton.plug.context.AbstractConnectionContext$LocalListener.onRemoteClose(AbstractConnectionContext.java:258)
      	at org.proton.plug.handler.Events.dispatch(Events.java:89)
      	at org.proton.plug.handler.impl.ProtonHandlerImpl.dispatch(ProtonHandlerImpl.java:399)
      	at org.proton.plug.handler.impl.ProtonHandlerImpl.flush(ProtonHandlerImpl.java:298)
      	at org.proton.plug.handler.impl.ProtonHandlerImpl.inputBuffer(ProtonHandlerImpl.java:178)
      	at org.proton.plug.context.AbstractConnectionContext.inputBuffer(AbstractConnectionContext.java:71)
      	at org.apache.activemq.core.protocol.proton.ActiveMQProtonRemotingConnection.bufferReceived(ActiveMQProtonRemotingConnection.java:140)
      	at org.apache.activemq.core.remoting.server.impl.RemotingServiceImpl$DelegatingBufferHandler.bufferReceived(RemotingServiceImpl.java:665)
      	at org.apache.activemq.core.remoting.impl.netty.ActiveMQChannelHandler.channelRead(ActiveMQChannelHandler.java:77)
      	at io.netty.channel.AbstractChannelHandlerContext.invokeChannelRead(AbstractChannelHandlerContext.java:332)
      	at io.netty.channel.AbstractChannelHandlerContext.fireChannelRead(AbstractChannelHandlerContext.java:318)
      	at io.netty.channel.DefaultChannelPipeline.fireChannelRead(DefaultChannelPipeline.java:787)
      	at io.netty.channel.nio.AbstractNioByteChannel$NioByteUnsafe.read(AbstractNioByteChannel.java:125)
      	at io.netty.channel.nio.NioEventLoop.processSelectedKey(NioEventLoop.java:507)
      	at io.netty.channel.nio.NioEventLoop.processSelectedKeysOptimized(NioEventLoop.java:464)
      	at io.netty.channel.nio.NioEventLoop.processSelectedKeys(NioEventLoop.java:378)
      	at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:350)
      	at io.netty.util.concurrent.SingleThreadEventExecutor$2.run(SingleThreadEventExecutor.java:116)
      	at java.lang.Thread.run(Thread.java:745)
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            robbie Robbie Gemmell
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: