nteract / bookstore

📚 Notebook storage and publishing workflows for the masses
https://bookstore.readthedocs.io
BSD 3-Clause "New" or "Revised" License
201 stars 23 forks source link

Clone hanging when reading asyncio response object body from S3 #145

Open mpacer opened 5 years ago

mpacer commented 5 years ago

Today, when I was using bookstore to clone from S3, I found that responses were just hanging indefinitely.

It seems to be occurring when we attempt to read the s3 response object's body (with await obj['Body'].read()).

Importantly, it doesn't hang when using minio's mock s3 server.

Does anyone have any insight as to what could be causing this?

@kylek @willingc @mseal

mpacer commented 5 years ago

I figured out that this seems to be related to trying to read the Body outside of the client context manager.

What's odd is that it still works with minio, and so I'm wondering if there is a hidden race condition.

In any case, I opened https://github.com/aio-libs/aiobotocore/issues/710 so we could track the underlying issue there.

In the meantime I'll work on a refactor so we can get 2.3.1 out the door.