Skip to content
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

volume put: concurrent sha256 hash for multipart uploads #2724

Open
wants to merge 3 commits into
base: main
Choose a base branch
from

Conversation

danielnorberg
Copy link
Contributor

@danielnorberg danielnorberg commented Jan 4, 2025

Concurrently compute sha256 hash while uploading for volume put operations of large files.

This part of the client code is maybe already too gnarly to the added complexity, but this was the smallest change I could come up with and the gains are significant for large volume puts.

Another option would be to omit the client-side sha256 digest entirely, but the complexity seems to end up being similar and then we also need server-side changes to handle the lack of sha256_hex in the MountPutFile handler. We also lose some integrity protections, some of which were recently added and might thus be desirable to keep.

@danielnorberg danielnorberg force-pushed the dano/volume-put-concurrent-hash branch from c7cfe01 to 53187c0 Compare January 4, 2025 05:10
@danielnorberg danielnorberg marked this pull request as ready for review January 4, 2025 05:16
@erikbern
Copy link
Contributor

erikbern commented Jan 7, 2025

Should probably add a test for this? Or do we already have tests that cover it?

@danielnorberg
Copy link
Contributor Author

Does not look like any of the existing tests cover this. I'll add a test.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants