From 57914821d0193fe402234bee28cb6a6bbc6d822e Mon Sep 17 00:00:00 2001 From: Alexander Kukushkin Date: Tue, 9 Jun 2015 12:30:58 +0200 Subject: [PATCH] Randomize list of etcd cluster members --- helpers/etcd.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/helpers/etcd.py b/helpers/etcd.py index c579d481..4fb39f47 100644 --- a/helpers/etcd.py +++ b/helpers/etcd.py @@ -1,4 +1,5 @@ import logging +import random import requests import socket import sys @@ -124,7 +125,8 @@ class Client: members_cache = [] for member in response if load_from_srv else response['members']: members_cache.extend([m + '/' + self.API_VERSION for m in member['clientURLs']]) - self._members_cache = list(set(members_cache)) # TODO: randomize + self._members_cache = list(set(members_cache)) + random.shuffle(self._members_cache) if load_from_srv: self._next_server() else: