[rabbitmq-discuss] Ordering of redelivered messages?
root at localdomain.pl
Fri Jan 28 15:44:08 GMT 2011
W dniu 28.01.2011 16:32, Marek Majkowski pisze:
> Rather a). I guess you forgot to call "basic_ack" after a message.
I do call chan.basic_ack() after processing the message, otherwise the
messages would accumulate in the broker forever (or the messages would
be auto acked so shouldn't ever trigger redelivery). Or am I severely
> Check out the "forgotten acknowledgement" box here:
Nope, no unacknowledged messages here.
> When first consumer "subscribes" to a queue (using basic_consume),
> messages will be just delivered to it. Without 'basic_qos(prefetch_count)'
> *all* the messages will be immediately delivered to that consumer.
> (note: that's not exactly true).
> Nothing else happens on subscription.
> The "redelivery of unacked messages back to the queue" happens when
> consumer gets *disconnected*.
OK but that still does not explain what I have observed. The messages in
the queue have never been delivered (successfully or otherwise) to
anybody before, because they were published after the original consumer
was gone (and before the new one that eventually got them connected).
More information about the rabbitmq-discuss