[rabbitmq-discuss] Queues and auto_delete
Ben Hood
0x6e6562 at gmail.com
Thu Aug 6 22:07:09 BST 2009
Garrett,
On Thu, Aug 6, 2009 at 8:54 PM, Garrett Smith<g at rre.tt> wrote:
> This is what I'm referring to (from amqp-xml-doc0-8.pdf):
>
> "amq_queue_02 The server SHOULD allow for a reasonable delay between
> the point when it determines that a queue is not being used (or no
> longer used), and the point when it deletes the queue. At the least it
> must allow a client to create a queue and then create a consumer to
> read from it, with a small but non zero delay between these two
> actions. The server should equally allow for clients that may be
> disconnected prematurely, and wish to reconsume from the same queue
> without losing messages. We would recommend a configurable timeout,
> with a suitable default value being one minute."
>
> I understand this is a "should", but it seems to me a useful recommendation.
Yes, it does say that in 0-8 but that version of the spec was in
itself not exactly perfect, so some aspects of it should be taken with
a pinch of salt.
> If a client gets (unpredictably) disconnected (e.g. a brief network
> problem), the current implementation would immediately delete the
> queue, yeah?
As Matthias points out, it would be tricky to make this predictable.
So even though it is written into the spec, it doesn't necessarily
mean that it is a sensible thing to mandate (at least from a
cost-benefit perspective).
> I'm switching over from qpid (which does provide a delay before
> auto-deleting) so am trying to sort through any redesigns I'll need.
> Sounds like I'll want to set auto-delete to false and explicitly
> handle queue deletion from the clients.
Is there any reason why you are switching from qpid?
Ben
More information about the rabbitmq-discuss
mailing list