[rabbitmq-discuss] redelivery after ACK

larry.edelstein at therealreal.com larry.edelstein at therealreal.com
Fri Nov 9 01:04:31 GMT 2012


Yes, I'll take up this issue with the ruby-amqp groups.
 
I'm asking questions and carefully reporting the behavior I've observed. I'm new to these tools - RabbitMQ server, and the ruby amqp gem. These tools have been around for a while, and the platforms I'm using - RabbitMQ and Ruby and Ubuntu, RabbitMQ and Ruby and Mac OS - are used by many, many developers. It would be -arrogant- and foolish of me to assume that I've immediately stumbled upon a bug in code that I expect has been well-exercised out there in the world. So I'm trying to determine if I'm traversing less-used code paths, using new features, implementing an unusual use case or pattern, misunderstanding how ACKs are supposed to work, or misunderstanding how client-side state is propagated.
 
-larry
 
 
 
 
 
-----Original Message-----
From: "Matthias Radestock" <matthias at rabbitmq.com>
Sent: Thursday, November 8, 2012 3:42pm
To: "Discussions about RabbitMQ" <rabbitmq-discuss at lists.rabbitmq.com>
Cc: larry.edelstein at therealreal.com
Subject: Re: [rabbitmq-discuss] redelivery after ACK



Larry,

On 08/11/12 22:18, larry.edelstein at therealreal.com wrote:
> When I run a capture with Wireshark and consume/ack a few messages, I
> see the expected traffic, but no acks.
>
> However: when I set channel.prefetch(1), now I see the acks. If I kill
> and restart the consumer, delivery begins with the first un-ack'd
> message, as I'd expect.
>
> In fact, if I set channel.prefetch(..) to n, and kill/restart the
> consumer after n+1 messages have been received and ack'd, delivery
> resumes with the first un-ack'd message.
>
> And if I issue a queue.unsubscribe, then kill and restart, delivery
> resumes with un-ack'd messages.
>
> Have I misunderstood the way RabbitMQ and/or the gem are supposed to
> behave? I really thought an ack was an ack.

It's not clear what in the above you find surprising, except for the 
first observation. If your app is sending an ack but that doesn't show 
up on the wire then clearly there is a problem with either the app, or 
the client library, or the app's use of the client library.

I suggest you post on http://groups.google.com/group/ruby-amqp or 
perhaps file an issue at https://github.com/ruby-amqp/amqp/issues

Regards,

Matthias.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rabbitmq.com/pipermail/rabbitmq-discuss/attachments/20121108/121a79f8/attachment.htm>


More information about the rabbitmq-discuss mailing list