[downloader/http] Improve timeout detection when reading block of data (refs #10935)

This commit is contained in:
Sergey M․ 2020-09-18 03:32:54 +07:00
parent 86b7c00adc
commit cdc55e666f
No known key found for this signature in database
GPG Key ID: 2C393E0F18A9236D

View File

@ -238,9 +238,11 @@ class HttpFD(FileDownloader):
except socket.timeout as e: except socket.timeout as e:
retry(e) retry(e)
except socket.error as e: except socket.error as e:
if e.errno not in (errno.ECONNRESET, errno.ETIMEDOUT): # SSLError on python 2 (inherits socket.error) may have
raise # no errno set but this error message
if e.errno in (errno.ECONNRESET, errno.ETIMEDOUT) or getattr(e, 'message') == 'The read operation timed out':
retry(e) retry(e)
raise
byte_counter += len(data_block) byte_counter += len(data_block)