diff options
author | Casey Bodley <cbodley@redhat.com> | 2020-03-31 15:22:51 +0200 |
---|---|---|
committer | Casey Bodley <cbodley@redhat.com> | 2020-04-13 17:06:46 +0200 |
commit | 5a64703fd6d24399137aa550fec6023dec1be162 (patch) | |
tree | ca29ec802ea3ef87c03b6ba398be83a03047bb18 /src/rgw/rgw_cr_rados.h | |
parent | rgw: incremental bucket sync status stores timestamp (diff) | |
download | ceph-5a64703fd6d24399137aa550fec6023dec1be162.tar.xz ceph-5a64703fd6d24399137aa550fec6023dec1be162.zip |
rgw: add CR for omap_get_vals()
Signed-off-by: Casey Bodley <cbodley@redhat.com>
Diffstat (limited to 'src/rgw/rgw_cr_rados.h')
-rw-r--r-- | src/rgw/rgw_cr_rados.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/rgw/rgw_cr_rados.h b/src/rgw/rgw_cr_rados.h index e3a9e3c465a..23c75438d12 100644 --- a/src/rgw/rgw_cr_rados.h +++ b/src/rgw/rgw_cr_rados.h @@ -614,6 +614,31 @@ class RGWRadosGetOmapKeysCR : public RGWSimpleCoroutine { boost::intrusive_ptr<RGWAioCompletionNotifier> cn; }; +class RGWRadosGetOmapValsCR : public RGWSimpleCoroutine { + public: + struct Result { + rgw_rados_ref ref; + std::map<std::string, bufferlist> entries; + bool more = false; + }; + using ResultPtr = std::shared_ptr<Result>; + + RGWRadosGetOmapValsCR(rgw::sal::RGWRadosStore *_store, const rgw_raw_obj& _obj, + const string& _marker, int _max_entries, + ResultPtr result); + + int send_request() override; + int request_complete() override; + + private: + rgw::sal::RGWRadosStore *store; + rgw_raw_obj obj; + string marker; + int max_entries; + ResultPtr result; + boost::intrusive_ptr<RGWAioCompletionNotifier> cn; +}; + class RGWRadosRemoveOmapKeysCR : public RGWSimpleCoroutine { rgw::sal::RGWRadosStore *store; |