From 6fe1aec1c74f112db297cd727d2ea400a292b038 Mon Sep 17 00:00:00 2001
From: Oleg Bondarev <obondarev@mirantis.com>
Date: Thu, 4 Jul 2019 16:08:45 +0400
Subject: [PATCH] Use default exchange for direct messaging

Lots of exchanges create problems during failover under high
load. Please see bug report for details.

This is a step 2 patch.

Step 1 was: only using default exchange
when publishing.
Step 2 is to update consumers to only listen on default exchange,
happening now in T release.

Change-Id: Ib2ba62a642e6ce45c23568daeef9703a647707f3
Closes-Bug: #1789177
---
 oslo_messaging/_drivers/impl_rabbit.py | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/oslo_messaging/_drivers/impl_rabbit.py b/oslo_messaging/_drivers/impl_rabbit.py
index 1726fec2d..fda9f0b3d 100644
--- a/oslo_messaging/_drivers/impl_rabbit.py
+++ b/oslo_messaging/_drivers/impl_rabbit.py
@@ -1053,13 +1053,12 @@ class Connection(object):
         responses for call/multicall
         """
 
-        # TODO(obondarev): use default exchange since T release
-        consumer = Consumer(exchange_name=topic,
+        consumer = Consumer(exchange_name='',  # using default exchange
                             queue_name=topic,
-                            routing_key=topic,
+                            routing_key='',
                             type='direct',
                             durable=False,
-                            exchange_auto_delete=True,
+                            exchange_auto_delete=False,
                             queue_auto_delete=False,
                             callback=callback,
                             rabbit_ha_queues=self.rabbit_ha_queues,