]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commit
rgw: batch and process bucket instances
authorAbhishek Lekshmanan <alekshmanan@suse.com>
Wed, 17 Oct 2018 22:44:51 +0000 (00:44 +0200)
committerAbhishek Lekshmanan <abhishek@suse.com>
Wed, 6 Mar 2019 15:45:29 +0000 (16:45 +0100)
commitfd0799dda552a533ea0a423952db0e165e679113
treee25f3c861cf7700d073cd0e2bc5d2a40cb96c0d6
parent441d9a2e8b58b21b7386b90f26b180326b3a873a
rgw: batch and process bucket instances

Sort through and batch bucket instances so that multiple calls to reading
current bucket info and locking can be avoided. For the most trivial case when
the bucket is already deleted we exit early with all the stale instances. When
the bucket reshard is in progress we only process the stale entries with status
done, if the bucket is available for locking then we lock down and mark the
other instances as well.

Signed-off-by: Abhishek Lekshmanan <abhishek@suse.com>
(cherry picked from commit fb9c0497621fce34283094cfe260480f9122573f)

 Conflicts:
src/rgw/rgw_bucket.cc
Get rid of the following c++17isms:
- split_tenant auto return type -> trailing return type
- tuple destructuring bind for split tenant with std::tie
src/rgw/rgw_bucket.cc