Timothy Bish created AMQ-5550:
---------------------------------

             Summary: Close of an AMQP consumer that failed to open because it 
was unauthorized causes exception in broker logs.
                 Key: AMQ-5550
                 URL: https://issues.apache.org/jira/browse/AMQ-5550
             Project: ActiveMQ
          Issue Type: Bug
          Components: AMQP
    Affects Versions: 5.11.0
            Reporter: Timothy Bish
            Assignee: Timothy Bish
            Priority: Minor
             Fix For: 5.12.0


When an AMQP client creates a receiver link and the logged in user is not 
authorized on error is sent to the client and the link is closed, this 
generates an event which causes us to try and remove the consumer but that 
consumer was never registered so you see these sorts of things in the logs:

{noformat}
java.lang.IllegalStateException: Cannot remove a consumer that had not been 
registered: ID:OfficePC-58049-1422548859782-1:3:1:0
        at 
org.apache.activemq.broker.TransportConnection.processRemoveConsumer(TransportConnection.java:691)
        at org.apache.activemq.command.RemoveInfo.visit(RemoveInfo.java:76)
        at 
org.apache.activemq.broker.TransportConnection.service(TransportConnection.java:334)
        at 
org.apache.activemq.broker.TransportConnection$1.onCommand(TransportConnection.java:188)
        at 
org.apache.activemq.transport.amqp.AmqpTransportFilter.sendToActiveMQ(AmqpTransportFilter.java:114)
        at 
org.apache.activemq.transport.amqp.AmqpProtocolConverter.sendToActiveMQ(AmqpProtocolConverter.java:1486)
        at 
org.apache.activemq.transport.amqp.AmqpProtocolConverter$ConsumerContext.onClose(AmqpProtocolConverter.java:1017)
        at 
org.apache.activemq.transport.amqp.AmqpProtocolConverter.processLinkEvent(AmqpProtocolConverter.java:390)
        at 
org.apache.activemq.transport.amqp.AmqpProtocolConverter.onFrame(AmqpProtocolConverter.java:331)
        at 
org.apache.activemq.transport.amqp.AmqpProtocolConverter.onAMQPData(AmqpProtocolConverter.java:275)
        at 
org.apache.activemq.transport.amqp.AmqpTransportFilter.onCommand(AmqpTransportFilter.java:98)
        at 
org.apache.activemq.transport.TransportSupport.doConsume(TransportSupport.java:83)
        at 
org.apache.activemq.transport.tcp.TcpTransport.doRun(TcpTransport.java:214)
        at 
org.apache.activemq.transport.tcp.TcpTransport.run(TcpTransport.java:196)
{noformat}

This would likely also happen for a sender link.

We need to track this state and not try and remove consumers or producers from 
the Broker that not actually registered due to security or other errors.



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

Reply via email to