Feature sdk 574 copy range #88
Merged
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.
After further research, I findthat this header 'x-emc-copy-mode' would only work in Multi-Part Copy API (Copy Range). So first I remove the header in Copy Object request, and wouldn't anymore add it in Copy Part request.
Based on communication with object heads dev, ECS extension API: Copy Range, which is not an S3 API, is introduced. It's like a general need by users, not only DataDomain.
S3's Upload Part - Copy API might have these two problems. 1) when we have tons of parts in objects, it would cause a lot of transaction overhead to create all the part objects and have a lot of partial GC in deep copy mode. 2) The "recipe" should somehow put into the body of the request to bypass the server limits on HTTP headers.
Here is the design doc, https://confluence.cec.lab.emc.com/display/ECS/Copy+Range+API+Design.