]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
rgw: make incomplete multipart upload part of bucket check efficient 64464/head
authorJ. Eric Ivancich <ivancich@redhat.com>
Wed, 24 Apr 2024 22:05:33 +0000 (18:05 -0400)
committerJ. Eric Ivancich <ivancich@redhat.com>
Fri, 11 Jul 2025 21:07:28 +0000 (17:07 -0400)
commit09567c8c290d52eb21e66cc1702d90379a032b3f
tree1842a9f34c068e1f3889a25b1647d824c7329f1b
parent0e03dd518689493b5afcd82100e026734877af9c
rgw: make incomplete multipart upload part of bucket check efficient

Previously the incomplete multipart portion of bucket check would list
all entries in the _multipart_ namespace across all shards and then
analyze them in memory before taking further action.

Since all index entries for a given multipart upload are all on the
same shard by design, we can work on this asynchronously shard by
shard. Furthermore since all entries for a given multipart upload are
sequential in the bucket index, we can use a small window to analyze
each of the uploads.

This should make the operation quicker and use much less memory in the
worst cases.

Signed-off-by: J. Eric Ivancich <ivancich@redhat.com>
(cherry picked from commit ebe98934cd69a32abb3ddafc1fa94b40dfa6844c)
src/rgw/driver/rados/rgw_bucket.cc
src/rgw/driver/rados/rgw_bucket.h