[rabbitmq-discuss] message availability after close without ack

Matthew Sackman matthew at rabbitmq.com
Tue Jun 15 18:49:19 BST 2010


On Tue, Jun 15, 2010 at 01:23:42PM -0400, Tim Cole wrote:
> My understanding had been that if a consumer is canceled (and its
> channel closed) without having acked delivered messages, then those
> messages become available to later consumers on the same queue.

You're understanding is correct - the key part is the channel being
closed.

> That doesn't actually appear to be happening, however.
> I have a bit of code which is essentially doing:
> 
>  ==> basic.consume
>  <== basic.deliver
>  # transient application error happens
>  ==> basic.cancel
>  ==> channel.close
> 
>  ==> channel.open
>  ==> basic.consume
>  # no message delivered
> 
> I would expect to get a basic.deliver with the same message as before,
> since the message wasn't acked the first time.  I'm not, though.  Is
> there more to it than this?

Hmm. Can you isolate the code that is doing this - it really shouldn't
be happening.

Matthew


More information about the rabbitmq-discuss mailing list