-
Notifications
You must be signed in to change notification settings - Fork 10
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
concurrent multipart support for transfer #130
concurrent multipart support for transfer #130
Conversation
7e8e7c3
to
9fe71ae
Compare
9fe71ae
to
8fc2fad
Compare
Codecov ReportPatch coverage:
Additional details and impacted files@@ Coverage Diff @@
## main #130 +/- ##
==========================================
+ Coverage 65.25% 66.33% +1.08%
==========================================
Files 31 31
Lines 3606 3844 +238
==========================================
+ Hits 2353 2550 +197
- Misses 1253 1294 +41
☔ View full report in Codecov by Sentry. |
696209f
to
33ed123
Compare
ff706bd
to
6d7e50a
Compare
6d7e50a
to
df85b54
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
would insist on trying to reuse as much as possible.
Also the main problem with this approach is the *transfer classes get bloated as we add more code to them, it would be nice if there some Protocol could be expected from *transfer classes to better support concurrent uploads
df85b54
to
5915528
Compare
70d7775
to
ef9ecd2
Compare
I did some test trying to upload files using botocore and see the heap size. From what I can tell botocore is using a very small buffer, the RAM is basically constant during upload (I have uploaded a chunk of 2GB, and during the whole duration RAM use was constant). I discovered that botocore has some heuristics in |
…fer pool correctly
botocore wants a seekable stream apparently.
f2c6500
to
70ff235
Compare
f78523e
to
38f2ea1
Compare
I'm not authorized to merge this. |
About this change - What it does
Alternative version of #128
Why this way
Simplifies API (no resume) and avoids an extra class.