Details
-
Bug
-
Status: Open
-
Major
-
Resolution: Unresolved
-
qpid-java-broker-8.0.2
-
None
-
None
Description
The AMQP 0-9-1 specification states that the broker creates a unique consumer tag upon consume when the client provides an empty consumer tag. The tags are unique per channel.
However, Qpid creates non-unique tags when consumers target different queues. In our case two consumers created via the same channel for two different queues both have the same auto-generated tag sgen_1. This becomes an issue during auto-recovery using the RabbitMQ Java client. It has an internal map with consumer tags as keys that is used during auto-recovery. Now, if two consumers get the same tag from the broker the second consumer will override the first consumer and thus will not get restored.
Looking at the management console it seems that internally the consumer tags are unique, e.g. 0|1|sgen_1 but the reply to consume sent to the client only contains sgen_1.