IncompleteReadError при чтении файла из S3 на AWS Lambda - PullRequest
0 голосов
/ 29 мая 2019

При чтении файла из S3 на AWS Lambda я получаю IncompleteReadError. Когда я пробую это локально, это работает просто отлично. Это происходит только на Python3.6 и прекрасно работает на Python3.7 - однако мне нужно использовать Python3.6. Я также пытался использовать ресурс вместо клиента, но получил ту же ошибку

Traceback (most recent call last):
  File "/var/task/function.py", line 141, in handler
    i = d.read()
  File "/var/runtime/botocore/response.py", line 82, in read
    self._verify_content_length()
  File "/var/runtime/botocore/response.py", line 134, in _verify_content_length
    expected_bytes=int(self._content_length))
botocore.exceptions.IncompleteReadError: 0 read, but total bytes expected is 36678.

Область кода, где он терпит неудачу, находится здесь:

client = boto3.client('s3')        
get_json_file = client.get_object(
    Bucket=os.environ['S3_BUCKET'],
    Key="{0}".format(file_name),
)

d = get_json_file.get('Body')
i = d.read()
data = json.loads(i)
...