From 3445069b3da6a33356f2d16a9ff27a722873512d Mon Sep 17 00:00:00 2001 From: Brian Dolbec Date: Sun, 4 May 2014 19:03:01 -0700 Subject: selectors.py: Add IncompleteRead exception Improve output formatting. --- mirrorselect/selectors.py | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/mirrorselect/selectors.py b/mirrorselect/selectors.py index 5d30695..1aa5f11 100644 --- a/mirrorselect/selectors.py +++ b/mirrorselect/selectors.py @@ -42,6 +42,8 @@ if sys.version_info[0] >= 3: url_unparse = urllib.parse.urlunparse url_open = urllib.request.urlopen HTTPError = urllib.error.HTTPError + import http.client + IncompleteRead = http.client.IncompleteRead else: import urllib2 import urlparse @@ -49,6 +51,8 @@ else: url_unparse = urlparse.urlunparse url_open = urllib2.urlopen HTTPError = urllib2.HTTPError + import httplib + IncompleteRead = httplib.IncompleteRead from mirrorselect.output import encoder, get_encoding, decode_selection @@ -369,7 +373,7 @@ class Deep(object): f.close() if md5 != self.test_md5: self.output.write( - "deeptime(): md5sum error for file: %s\n" + "\ndeeptime(): md5sum error for file: %s\n" % self.test_file + " expected: %s\n" % self.test_md5 + " got.....: %s\n" % md5 + @@ -382,13 +386,17 @@ class Deep(object): signal.alarm(0) except EnvironmentError as e: - self.output.write(('deeptime(): download from host %s ' + self.output.write(('\ndeeptime(): download from host %s ' 'failed for ip %s: %s\n') % (url_parts.hostname, ip, e), 2) return (None, True) except TimeoutException: - self.output.write(('deeptime(): download from host %s ' + self.output.write(('\ndeeptime(): download from host %s ' 'timed out for ip %s\n') % (url_parts.hostname, ip), 2) return (None, True) + except IncompleteRead as e: + self.output.write(('\ndeeptime(): download from host %s ' + 'failed for ip %s: %s\n') % (url_parts.hostname, ip, e), 2) + return (None, True) signal.signal(signal.SIGALRM, signal.SIG_DFL) -- cgit v1.2.3-18-g5258