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