Optimize TUS upload: remove redundant HEAD request#68
Closed
zerox80 wants to merge 2 commits intoopencloud-eu:mainfrom
Closed
Optimize TUS upload: remove redundant HEAD request#68zerox80 wants to merge 2 commits intoopencloud-eu:mainfrom
zerox80 wants to merge 2 commits intoopencloud-eu:mainfrom
Conversation
Contributor
|
Looks fine 👍 (yes i know it's part of the other PR now) maybe later could add a separate test where there is an actual chunk uploaded on create so it's not assertEquals(0L, offset) but had the chunk uploaded |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Optimize TUS upload: remove redundant HEAD request
Description
This PR optimizes the TUS upload flow by removing a redundant
HEADrequest that was previously performed immediately after creating a new upload.Context
The TUS protocol (v1.0.0) specifies that the
POSTrequest used to create an upload resource may return theUpload-Offsetheader (usually 0 for new uploads). Previously, our client ignored this header and always performed a subsequentHEADrequest to fetch the offset before starting the upload.Changes
CreateTusUploadRemoteOperation: Now parses theUpload-Offsetheader from the creation response and returns it along with the upload URL.TusUploadHelper: Uses the offset returned from the creation step directly. The separateHEADrequest is now only performed if we are resuming an existing upload (where we don't have a fresh creation response) or if the creation response didn't provide an offset.TusIntegrationTestto verify the new return type and behavior.Benefits
Code Explanation
CreateTusUploadRemoteOperation.ktTusUploadHelper.ktTusIntegrationTest.kt