Fix incorrect exception order in _execute_request

_execute_request has a list of exception handlers to log various types
of errors with more specific error messages. Unfortunately, it catches
requests.exceptions.ConnectionError before requests.exceptions.SSLError,
but ConnectionError is a superclass of SSLError so the latter is never
invoked.

This change corrects the exception handling order, and enables the
bad-except-order pylint check now that the check passes.

Change-Id: I92bacd6088de5cbc170bc5c081a1db1baeec69e7
Closes-Bug: #1360970
This commit is contained in:
Angus Lees 2014-08-25 12:02:16 +10:00
parent d2ae88617f
commit 7da0ac089f
2 changed files with 4 additions and 5 deletions

View File

@ -19,7 +19,6 @@ disable=
locally-disabled, locally-disabled,
# "E" Error for important programming issues (likely bugs) # "E" Error for important programming issues (likely bugs)
access-member-before-definition, access-member-before-definition,
bad-except-order,
bad-super-call, bad-super-call,
maybe-no-member, maybe-no-member,
no-member, no-member,

View File

@ -130,15 +130,15 @@ class NSClient(object):
try: try:
response = requests.request(method, url=resource_uri, response = requests.request(method, url=resource_uri,
headers=headers, data=body) headers=headers, data=body)
except requests.exceptions.SSLError:
LOG.exception(_LE("SSL error occurred while connecting to %s"),
self.service_uri)
raise NCCException(NCCException.CONNECTION_ERROR)
except requests.exceptions.ConnectionError: except requests.exceptions.ConnectionError:
LOG.exception(_LE("Connection error occurred while connecting " LOG.exception(_LE("Connection error occurred while connecting "
"to %s"), "to %s"),
self.service_uri) self.service_uri)
raise NCCException(NCCException.CONNECTION_ERROR) raise NCCException(NCCException.CONNECTION_ERROR)
except requests.exceptions.SSLError:
LOG.exception(_LE("SSL error occurred while connecting to %s"),
self.service_uri)
raise NCCException(NCCException.CONNECTION_ERROR)
except requests.exceptions.Timeout: except requests.exceptions.Timeout:
LOG.exception(_LE("Request to %s timed out"), self.service_uri) LOG.exception(_LE("Request to %s timed out"), self.service_uri)
raise NCCException(NCCException.CONNECTION_ERROR) raise NCCException(NCCException.CONNECTION_ERROR)