in s3transfer/processpool.py [0:0]
def _do_get_object(self, bucket, key, extra_args, temp_filename, offset):
last_exception = None
for i in range(self._MAX_ATTEMPTS):
try:
response = self._client.get_object(
Bucket=bucket, Key=key, **extra_args
)
self._write_to_file(temp_filename, offset, response['Body'])
return
except S3_RETRYABLE_DOWNLOAD_ERRORS as e:
logger.debug(
'Retrying exception caught (%s), '
'retrying request, (attempt %s / %s)',
e,
i + 1,
self._MAX_ATTEMPTS,
exc_info=True,
)
last_exception = e
raise RetriesExceededError(last_exception)