[rabbitmq-discuss] “Unknown delivery tag” from RabbitMQ when ack'ing a message in a cluster with replicated queues
Matthias Radestock
matthias at rabbitmq.com
Fri Sep 30 18:59:12 BST 2011
Steve,
On 30/09/11 18:31, Steve Rehrauer wrote:
> Later, when the consumer has reconnected, it again pulls down the same
> message. (The message bodies are tagged with a UUID, so I know it is
> the same one.) This time, when the consumer attempts to basicAck() the
> message, it again gets ShutdownSignalException, but this one has the
> following text in it: "reply-text=PRECONDITION_FAILED - unknown
> delivery tag 7".
Delivery tags are allocated by server-side channel processes; nothing to
do with queues and hence certainly nothing to do with replication.
> In fact, that is the same delivery tag that was offered to the
> consumer by the broker before the master went down and the consumer
> reconnected.
The symptoms you are describing are most likely cause by some misrouting
in the app or, less likely, the rabbitmq client library.
Are you 100% sure that you are issuing the channel.basicAck on the
channel on which the message was received, particularly when there is
some reconnect going on?
Connecting via the tracer (http://www.rabbitmq.com/examples.html#tracer)
might shed some light on what's going on.
Regards,
Matthias.
More information about the rabbitmq-discuss
mailing list