OpenStack library for messaging
Go to file
shenjiatong b2acc6663f Cancel consumer if queue down
Previously, we have switched to use default exchanges
to avoid excessive amounts of exchange not found messages.
But it does not actually solve the problem because
reply_* queue is already gone and agent will not receive callbacks.

after some debugging, I found under some circumstances
seems rabbitmq consumer does not receive basic cancel
signal when queue is already gone. This might due to
rabbitmq try to restart consumer when queue is down
(for example when split brain). In such cases,
it might be better to fail early.

by reading the code, seems like x-cancel-on-ha-failover
is not dedicated to mirror queues only, https://github.com/rabbitmq/rabbitmq-server/blob/master/src/rabbit_channel.erl#L1894,
https://github.com/rabbitmq/rabbitmq-server/blob/master/src/rabbit_channel.erl#L1926.

By failing early, in my own test setup,
I could solve a certain case of exchange not found problem.

Change-Id: I2ae53340783e4044dab58035bc0992dc08145b53
Related-bug: #1789177
Depends-On: https://review.opendev.org/#/c/747892/
(cherry picked from commit 196fa877a9)
(cherry picked from commit 0a432c7fb1)
(cherry picked from commit 5de11fa752)
2021-04-15 13:59:07 +00:00
doc Cap Bandit below 1.6.0 and update Sphinx requirement 2019-05-21 15:24:23 +02:00
etc Fix spelling typo in output 2015-09-24 18:11:22 +08:00
oslo_messaging Cancel consumer if queue down 2021-04-15 13:59:07 +00:00
playbooks OpenDev Migration Patch 2019-04-19 19:31:55 +00:00
releasenotes Cancel consumer if queue down 2021-04-15 13:59:07 +00:00
tools Simplify tools/test-setup.sh 2020-07-03 20:25:21 +02:00
.coveragerc Update .coveragerc after the removal of respective directory 2016-10-18 17:20:09 +05:30
.gitignore Clean up .gitignore references to personal tools 2018-10-15 11:49:38 +08:00
.gitreview OpenDev Migration Patch 2019-04-19 19:31:55 +00:00
.stestr.conf Switch to stestr 2018-07-04 08:33:49 +07:00
.zuul.yaml Dropping lower constraints testing 2021-04-15 14:57:34 +01:00
CONTRIBUTING.rst Optimize the link address 2017-04-08 22:39:02 +08:00
HACKING.rst Update URLs in documents according to document migration 2017-07-12 22:54:02 +08:00
LICENSE Add oslo.messaging project infrastructure 2013-06-15 08:43:50 +01:00
README.rst Add release notes link to README 2018-06-21 13:16:36 +08:00
babel.cfg Setup for translation 2014-06-05 22:48:44 +02:00
bindep.txt Simplify tools/test-setup.sh 2020-07-03 20:25:21 +02:00
requirements.txt Bump amqp requirement version to >=2.4.1 2019-02-18 18:29:26 +01:00
setup-test-env-kafka.sh Switch driver to confluent-kafka client library 2018-12-04 11:25:07 -05:00
setup.cfg Merge "Switch driver to confluent-kafka client library" 2018-12-07 19:59:50 +00:00
setup.py Updated from global requirements 2017-12-13 05:01:29 +00:00
test-requirements.txt Cap Bandit below 1.6.0 and update Sphinx requirement 2019-05-21 15:24:23 +02:00
tox.ini Dropping lower constraints testing 2021-04-15 14:57:34 +01:00

README.rst

Team and repository tags

image

Oslo Messaging Library

Latest Version

Downloads

The Oslo messaging API supports RPC and notifications over a number of different messaging transports.