kombu
kombu copied to clipboard
Queues that are exclusive should not imply they are also auto-deleted
Queues that are exclusive should not imply they are also auto-deleted: https://github.com/celery/kombu/blob/master/kombu/entity.py#L582
The AMQP specification does not make the assumption that exclusive queues are also auto-deleted.
Section 2.1.4.1
exclusive - if set, the queue belongs to the current connection only, and is deleted when the connection closes.
Section 3.1.4
Message queues may be durable, temporary, or auto-deleted. Durable message queues last until they are deleted. Temporary message queues last until the server shuts-down. Auto-deleted message queues last until they are no longer used.
Per the AMQP specification a queue's exclusiveness only pertains to the connection. Auto-deleted deals with consumers and deletes a queue when the queue has had at least one consumer and the last consumer unsubscribes.
Also see RabbitMQ's AMQP explanation of queues: https://www.rabbitmq.com/tutorials/amqp-concepts.html. Note that it is possible to create exclusive non-auto-deleted queues in RabbitMQ.
PR incoming.