commit 10625eed87b4c7f980bd5cd7cacbc4caa2dec197
Author: John Eckersberg <email address hidden>
Date: Fri Nov 20 17:25:58 2015 -0500
Kombu: make reply and fanout queues expire instead of auto-delete
Right now fanout and reply queues are unconditionally created with
auto-delete flag which causes a number of problems listed in bug
1495568. Replacing auto-delete with queue expiration with some sane
timeout should fix all these issues at once.
Another problem being fixed is that auto-delete flag does not causes
the queue to be deleted if it never had consumers. An orphaned fanout
queue might appear that way and it will grow indefinitely until
somebody manually removes it. See bug 1515278 for details.
A new rabbit_transient_queues_ttl config parameter is introduced which
configures the TTL for reply and fanout queues. It is a positive
integer representing timeout in seconds. By default it is set to 10
minutes. That should be enough for application to reconnect or
for server to send reply to client which already died. At the same
time, it seems that not so many messages could be accumulated in
fanout queues during that time.
DocImpact
With this change RabbitMQ driver defines reply and fanout queues
differently comparing with the previous release: now they are defined
with queue TTL (https://www.rabbitmq.com/ttl.html#queue-ttl) instead
of auto-delete flag. That helps avoid a number of issues, see commit
description for details. A new rabbit_transient_queues_ttl parameter
is defined which controls the TTL value. It is set to 10 minutes by
default. The change does not affect upgrade in any way.
Reviewed: https:/ /review. openstack. org/243845 /git.openstack. org/cgit/ openstack/ oslo.messaging/ commit/ ?id=10625eed87b 4c7f980bd5cd7ca cbc4caa2dec197
Committed: https:/
Submitter: Jenkins
Branch: master
commit 10625eed87b4c7f 980bd5cd7cacbc4 caa2dec197
Author: John Eckersberg <email address hidden>
Date: Fri Nov 20 17:25:58 2015 -0500
Kombu: make reply and fanout queues expire instead of auto-delete
Right now fanout and reply queues are unconditionally created with
auto-delete flag which causes a number of problems listed in bug
1495568. Replacing auto-delete with queue expiration with some sane
timeout should fix all these issues at once.
Another problem being fixed is that auto-delete flag does not causes
the queue to be deleted if it never had consumers. An orphaned fanout
queue might appear that way and it will grow indefinitely until
somebody manually removes it. See bug 1515278 for details.
A new rabbit_ transient_ queues_ ttl config parameter is introduced which
configures the TTL for reply and fanout queues. It is a positive
integer representing timeout in seconds. By default it is set to 10
minutes. That should be enough for application to reconnect or
for server to send reply to client which already died. At the same
time, it seems that not so many messages could be accumulated in
fanout queues during that time.
DocImpact /www.rabbitmq. com/ttl. html#queue- ttl) instead transient_ queues_ ttl parameter
With this change RabbitMQ driver defines reply and fanout queues
differently comparing with the previous release: now they are defined
with queue TTL (https:/
of auto-delete flag. That helps avoid a number of issues, see commit
description for details. A new rabbit_
is defined which controls the TTL value. It is set to 10 minutes by
default. The change does not affect upgrade in any way.
Closes-bug: #1495568
Closes-bug: #1515278
Co-Authored-by: Dmitry Mescheryakov <email address hidden> 24c12d7043ec810 529a9ce57ab
Change-Id: I83a8d09dc0cdae