activemq-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Timothy Bish (JIRA)" <>
Subject [jira] [Resolved] (AMQ-5550) Close of an AMQP consumer that failed to open because it was unauthorized causes exception in broker logs.
Date Fri, 30 Jan 2015 16:46:36 GMT


Timothy Bish resolved AMQ-5550.
    Resolution: Fixed

Fix added to trunk to handle this for both sender and receiver links.

> Close of an AMQP consumer that failed to open because it was unauthorized causes exception
in broker logs.
> ----------------------------------------------------------------------------------------------------------
>                 Key: AMQ-5550
>                 URL:
>             Project: ActiveMQ
>          Issue Type: Bug
>          Components: AMQP
>    Affects Versions: 5.11.0
>            Reporter: Timothy Bish
>            Assignee: Timothy Bish
>             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:
> 	at
> 	at org.apache.activemq.command.RemoveInfo.visit(
> 	at
> 	at$1.onCommand(
> 	at org.apache.activemq.transport.amqp.AmqpTransportFilter.sendToActiveMQ(
> 	at org.apache.activemq.transport.amqp.AmqpProtocolConverter.sendToActiveMQ(
> 	at org.apache.activemq.transport.amqp.AmqpProtocolConverter$ConsumerContext.onClose(
> 	at org.apache.activemq.transport.amqp.AmqpProtocolConverter.processLinkEvent(
> 	at org.apache.activemq.transport.amqp.AmqpProtocolConverter.onFrame(
> 	at org.apache.activemq.transport.amqp.AmqpProtocolConverter.onAMQPData(
> 	at org.apache.activemq.transport.amqp.AmqpTransportFilter.onCommand(
> 	at org.apache.activemq.transport.TransportSupport.doConsume(
> 	at org.apache.activemq.transport.tcp.TcpTransport.doRun(
> 	at
> {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 causes not just log spam
but a connection close as we treat the returned error from the Broker as a fatal protocol
error which it is not. 

This message was sent by Atlassian JIRA

View raw message