diff --git a/oslo_messaging/_drivers/zmq_driver/client/publishers/dealer/zmq_dealer_publisher_proxy.py b/oslo_messaging/_drivers/zmq_driver/client/publishers/dealer/zmq_dealer_publisher_proxy.py index a0235856f..d9491034b 100644 --- a/oslo_messaging/_drivers/zmq_driver/client/publishers/dealer/zmq_dealer_publisher_proxy.py +++ b/oslo_messaging/_drivers/zmq_driver/client/publishers/dealer/zmq_dealer_publisher_proxy.py @@ -105,8 +105,9 @@ class DealerPublisherProxyDynamic( if not self.publishers: raise zmq_matchmaker_base.MatchmakerUnavailable() socket = self.sockets_manager.get_socket() - random.shuffle(self.publishers) - for publisher in self.publishers: + publishers = list(self.publishers) + random.shuffle(publishers) + for publisher in publishers: socket.connect_to_host(publisher) return socket