]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commit
rgw/sal: unify ReadStatsCB for async user/bucket stats
authorCasey Bodley <cbodley@redhat.com>
Wed, 22 Nov 2023 16:20:26 +0000 (11:20 -0500)
committerCasey Bodley <cbodley@redhat.com>
Thu, 23 Nov 2023 19:47:08 +0000 (14:47 -0500)
commit3bf735b4ab78f64e434feec7f11b84a2d9aa1a01
tree7fc883b296ace4c31c7da01e4444b901bdef09d8
parent52bed3747e84e9d5e865f02a57513359c78ac607
rgw/sal: unify ReadStatsCB for async user/bucket stats

`rgw::sal::Bucket::read_stats_async()` had returned stats as
`map<RGWObjCategory, RGWStorageStats>`, but the only caller in
rgw_quota.cc just summed up the categories into a single instance
of `RGWStorageStats`. moving this summation up into rgw_rados'
`RGWGetBucketStatsContext` allows us to unify these sal callbacks
around `RGWStorageStats` alone

the `RGWGetUserStats_CB`/`RGWGetBucketStats_CB` callbacks had inherited
from `RefCountedObject` and required manual reference counting. switch
to `boost::intrusive_ptr` for scope-based shared ownership

Signed-off-by: Casey Bodley <cbodley@redhat.com>
22 files changed:
src/rgw/driver/daos/rgw_sal_daos.cc
src/rgw/driver/daos/rgw_sal_daos.h
src/rgw/driver/motr/rgw_sal_motr.cc
src/rgw/driver/motr/rgw_sal_motr.h
src/rgw/driver/posix/rgw_sal_posix.cc
src/rgw/driver/posix/rgw_sal_posix.h
src/rgw/driver/rados/rgw_rados.cc
src/rgw/driver/rados/rgw_rados.h
src/rgw/driver/rados/rgw_sal_rados.cc
src/rgw/driver/rados/rgw_sal_rados.h
src/rgw/driver/rados/rgw_user.h
src/rgw/rgw_quota.cc
src/rgw/rgw_sal.h
src/rgw/rgw_sal_dbstore.cc
src/rgw/rgw_sal_dbstore.h
src/rgw/rgw_sal_filter.cc
src/rgw/rgw_sal_filter.h
src/rgw/rgw_sal_fwd.h
src/rgw/services/svc_user.h
src/rgw/services/svc_user_rados.cc
src/rgw/services/svc_user_rados.h
src/test/rgw/test_rgw_lua.cc