From 344ec5e8bb4a3df92e50edeab8d670f79aad5eb4 Mon Sep 17 00:00:00 2001
From: Dirk Mueller <dirk@dmllr.de>
Date: Sun, 28 Oct 2018 17:29:56 +0100
Subject: [PATCH] Avoid unnecessary use of items()

The key, value pair returned by items() wasn't used here,
so rewrite the logic to just iterate over the keys, filtered
by the type.

Change-Id: I7512ea93ac794d161a4cd9944546d6ca035a12cf
---
 oslo_messaging/_drivers/impl_rabbit.py | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/oslo_messaging/_drivers/impl_rabbit.py b/oslo_messaging/_drivers/impl_rabbit.py
index 1d77cfd5e..4ad763e0f 100644
--- a/oslo_messaging/_drivers/impl_rabbit.py
+++ b/oslo_messaging/_drivers/impl_rabbit.py
@@ -34,6 +34,7 @@ from oslo_config import cfg
 from oslo_log import log as logging
 from oslo_utils import eventletutils
 import six
+import six.moves
 from six.moves.urllib import parse
 
 import oslo_messaging
@@ -786,11 +787,11 @@ class Connection(object):
         """Close/release this connection."""
         self._heartbeat_stop()
         if self.connection:
-            for consumer, tag in self._consumers.items():
-                if consumer.type == 'fanout':
-                    LOG.debug('[connection close] Deleting fanout '
-                              'queue: %s ' % consumer.queue.name)
-                    consumer.queue.delete()
+            for consumer in six.moves.filter(lambda c: c.type == 'fanout',
+                                             self._consumers):
+                LOG.debug('[connection close] Deleting fanout '
+                          'queue: %s ' % consumer.queue.name)
+                consumer.queue.delete()
             self._set_current_channel(None)
             self.connection.release()
             self.connection = None