Merge "Qpid: advance thru the list of brokers on reconnect" into stable/havana

This commit is contained in:
Jenkins 2014-07-31 06:09:15 +00:00 committed by Gerrit Code Review
commit b8ef3e94e4
1 changed files with 5 additions and 3 deletions

View File

@ -468,6 +468,10 @@ class Connection(object):
self.brokers = params['qpid_hosts']
self.username = params['username']
self.password = params['password']
brokers_count = len(self.brokers)
self.next_broker_indices = itertools.cycle(range(brokers_count))
self.connection_create(self.brokers[0])
self.reconnect()
@ -495,7 +499,6 @@ class Connection(object):
def reconnect(self):
"""Handles reconnecting and re-establishing sessions and queues."""
attempt = 0
delay = 1
while True:
# Close the session if necessary
@ -505,8 +508,7 @@ class Connection(object):
except qpid_exceptions.ConnectionError:
pass
broker = self.brokers[attempt % len(self.brokers)]
attempt += 1
broker = self.brokers[next(self.next_broker_indices)]
try:
self.connection_create(broker)