diff options
author | Jenkins <jenkins@review.openstack.org> | 2015-08-28 21:56:46 +0000 |
---|---|---|
committer | Gerrit Code Review <review@openstack.org> | 2015-08-28 21:56:46 +0000 |
commit | 8819c6983b52b7a51d179a4e234e27ec81e03aea (patch) | |
tree | e116b593a92733a971898e3fb3b159e97daf9019 | |
parent | 61ab7a60e23d2393f5c9cec65c610727fb342728 (diff) | |
parent | 1baa2d7249dcb5ab765cbcf66b53344fd2dac19c (diff) | |
download | neutron-8819c6983b52b7a51d179a4e234e27ec81e03aea.tar.gz |
Merge "NSX-mh: Failover controller connections on socket failures" into stable/juno
-rw-r--r-- | neutron/plugins/vmware/api_client/eventlet_client.py | 4 | ||||
-rw-r--r-- | neutron/plugins/vmware/api_client/request.py | 4 |
2 files changed, 6 insertions, 2 deletions
diff --git a/neutron/plugins/vmware/api_client/eventlet_client.py b/neutron/plugins/vmware/api_client/eventlet_client.py index fa0cd1f3eb..dfbc30836c 100644 --- a/neutron/plugins/vmware/api_client/eventlet_client.py +++ b/neutron/plugins/vmware/api_client/eventlet_client.py @@ -65,8 +65,8 @@ class EventletApiClient(base.ApiClientBase): # Connection pool is a list of queues. self._conn_pool = eventlet.queue.PriorityQueue() self._next_conn_priority = 1 - for host, port, is_ssl in api_providers: - for _ in range(concurrent_connections): + for _ in range(concurrent_connections): + for host, port, is_ssl in api_providers: conn = self._create_connection(host, port, is_ssl) self._conn_pool.put((self._next_conn_priority, conn)) self._next_conn_priority += 1 diff --git a/neutron/plugins/vmware/api_client/request.py b/neutron/plugins/vmware/api_client/request.py index bfc80fcbca..62fcecf402 100644 --- a/neutron/plugins/vmware/api_client/request.py +++ b/neutron/plugins/vmware/api_client/request.py @@ -19,6 +19,7 @@ import abc import copy import eventlet import httplib +import socket import time import six @@ -193,9 +194,12 @@ class ApiRequest(object): 'url': self._url, 'status': response.status}) raise Exception(_('Server error return: %s'), response.status) return response + except socket.error: + is_conn_service_unavail = True except Exception as e: if isinstance(e, httplib.BadStatusLine): msg = (_("Invalid server response")) + else: msg = unicode(e) if response is None: |