oslo.messaging/oslo_messaging/_drivers
Arnaud Morin 8e3c523fd7 Auto-delete the failed quorum rabbit queues
When rabbit is failing for a specific quorum queue, the only thing to
do is to delete the queue (as per rabbit doc, see [1]).

So, to avoid the RPC service to be broken until an operator eventually
do a manual fix on it, catch any INTERNAL ERROR (code 541) and trigger
the deletion of the failed queues under those conditions.
So on next queue declare (triggered from various retries), the queue
will be created again and the service will recover by itself.

Closes-Bug: #2028384
Related-bug: #2031497

[1] https://www.rabbitmq.com/quorum-queues.html#availability

Signed-off-by: Arnaud Morin <arnaud.morin@ovhcloud.com>
Change-Id: Ib8dba833542973091a4e0bf23bb593aca89c5905
2023-11-12 00:08:20 +01:00
..
amqp1_driver amqp1: fix race when reconnecting 2021-11-09 15:59:54 -05:00
kafka_driver Add support for kafka SSL autentication 2020-01-16 23:26:53 +01:00
__init__.py Fixed a couple of pep8 errors/warnings 2016-01-25 15:00:49 +08:00
amqp.py Adding support for rabbitmq quorum queues 2022-02-05 07:12:49 +00:00
amqpdriver.py Increase ACK_REQUEUE_EVERY_SECONDS_MAX to exceed default kombu_reconnect_delay 2023-04-20 15:27:58 -05:00
base.py add min of 1 to rpc_conn_pool_size 2020-10-13 12:44:30 +01:00
common.py [rabbit] use retry parameters during notification sending 2022-01-12 12:22:55 +01:00
impl_amqp1.py Deprecate the amqp1 driver and Remove qpid functional tests 2022-10-18 11:27:46 +02:00
impl_fake.py Remove six usage 2020-05-11 10:21:58 +02:00
impl_kafka.py Remove logging from ProducerConnection._produce_message 2022-08-03 17:35:16 +02:00
impl_rabbit.py Auto-delete the failed quorum rabbit queues 2023-11-12 00:08:20 +01:00
pool.py [rabbit] use retry parameters during notification sending 2022-01-12 12:22:55 +01:00