-
Notifications
You must be signed in to change notification settings - Fork 241
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
CLDSRV-402: optimize API #5195
CLDSRV-402: optimize API #5195
Conversation
Hello williamlardier,My role is to assist you with the merge of this Status report is not available. |
Incorrect fix versionThe
Considering where you are trying to merge, I ignored possible hotfix versions and I expected to find:
Please check the |
f90f036
to
52b73c4
Compare
52b73c4
to
859f898
Compare
859f898
to
d0daff7
Compare
/force_reset |
Reset completeI have successfully deleted this pull request's integration branches. |
ConflictA conflict has been raised during the creation of I have not created the integration branch. Here are the steps to resolve this conflict: $ git fetch
$ git checkout -B w/8.5/improvement/CLDSRV-402-optimize-multiobjectdelete-api origin/development/8.5
$ git merge origin/improvement/CLDSRV-402-optimize-multiobjectdelete-api
$ # <intense conflict resolution>
$ git commit
$ git push -u origin w/8.5/improvement/CLDSRV-402-optimize-multiobjectdelete-api |
ping |
ConflictA conflict has been raised during the creation of I have not created the integration branch. Here are the steps to resolve this conflict: $ git fetch
$ git checkout -B w/8.6/improvement/CLDSRV-402-optimize-multiobjectdelete-api origin/development/8.6
$ git merge origin/w/8.5/improvement/CLDSRV-402-optimize-multiobjectdelete-api
$ # <intense conflict resolution>
$ git commit
$ git push -u origin w/8.6/improvement/CLDSRV-402-optimize-multiobjectdelete-api |
ping |
ConflictA conflict has been raised during the creation of I have not created the integration branch. Here are the steps to resolve this conflict: $ git fetch
$ git checkout -B w/8.7/improvement/CLDSRV-402-optimize-multiobjectdelete-api origin/development/8.7
$ git merge origin/w/8.6/improvement/CLDSRV-402-optimize-multiobjectdelete-api
$ # <intense conflict resolution>
$ git commit
$ git push -u origin w/8.7/improvement/CLDSRV-402-optimize-multiobjectdelete-api |
Waiting for approvalThe following approvals are needed before I can proceed with the merge:
|
/create_pull_requests |
Integration data createdI have created the integration data for the additional destination branches.
The following branches will NOT be impacted:
Follow integration pull requests if you would like to be notified of The following options are set: create_pull_requests |
fce82fa
to
37288ac
Compare
- Parallelism is increased to reduce the latency - If the backend supports it, batching is used - Batch the deletion of objects from storage - Flag to disable or enable the optimization, as well as a way to tune it.
37288ac
to
af0436f
Compare
/force_reset |
Reset completeI have successfully deleted this pull request's integration branches. The following options are set: create_pull_requests |
ConflictA conflict has been raised during the creation of I have not created the integration branch. Here are the steps to resolve this conflict: $ git fetch
$ git checkout -B w/8.6/improvement/CLDSRV-402-optimize-multiobjectdelete-api origin/development/8.6
$ git merge origin/improvement/CLDSRV-402-optimize-multiobjectdelete-api
$ # <intense conflict resolution>
$ git commit
$ git push -u origin w/8.6/improvement/CLDSRV-402-optimize-multiobjectdelete-api The following options are set: create_pull_requests |
ping |
ConflictA conflict has been raised during the creation of I have not created the integration branch. Here are the steps to resolve this conflict: $ git fetch
$ git checkout -B w/8.7/improvement/CLDSRV-402-optimize-multiobjectdelete-api origin/development/8.7
$ git merge origin/w/8.6/improvement/CLDSRV-402-optimize-multiobjectdelete-api
$ # <intense conflict resolution>
$ git commit
$ git push -u origin w/8.7/improvement/CLDSRV-402-optimize-multiobjectdelete-api The following options are set: create_pull_requests |
ping |
Integration data createdI have created the integration data for the additional destination branches.
The following branches will NOT be impacted:
Follow integration pull requests if you would like to be notified of The following options are set: create_pull_requests |
Waiting for approvalThe following approvals are needed before I can proceed with the merge:
The following options are set: create_pull_requests |
/approve |
In the queueThe changeset has received all authorizations and has been added to the The changeset will be merged in:
The following branches will NOT be impacted:
There is no action required on your side. You will be notified here once IMPORTANT Please do not attempt to modify this pull request.
If you need this pull request to be removed from the queue, please contact a The following options are set: approve, create_pull_requests |
I have successfully merged the changeset of this pull request
The following branches have NOT changed:
Please check the status of the associated issue CLDSRV-402. Goodbye williamlardier. |
For Artesca, more changes will be introduced with a bump of arsenal, and conflicts resolution (related to code not specific to this PR).
Federation & Integration (green) builds: https://github.com/scality/Integration/actions/runs/5309192284 & https://github.com/scality/Federation/actions/runs/5309145071
Context: The Veeam Ready tests for object with/without immutability are expecting us to perform a data deletion of 4 VM of 100GB each, splitted into 1MB files, in less than 4h. Today Artesca completes this in 10h, and RIng, 6hours.
The objective of this PR is to introduce optimizations for the MultiObjectDelete API:
Suggestion for the review: by commit. Changes in the
lib/api/multiObjectDelete.js
file are not huge, but the diff might display new code, even if only indentation changed...With these changes:
PR for 8.5: #5205
8.6: #5206
8.7: #5207
Note 2: the integration changes are around all the breaking changes we have in this API across cloudserver versions, but the implementation is common between 7.x & 8.x.