diff options
author | Casey Bodley <cbodley@redhat.com> | 2024-09-26 00:38:08 +0200 |
---|---|---|
committer | Casey Bodley <cbodley@redhat.com> | 2024-09-26 22:44:52 +0200 |
commit | 7769bdb9438d48afc8500c16167f82c8f549a914 (patch) | |
tree | 3d94c307a6403681b1c7a41b60d2c737bddaf3ec /src/rgw/rgw_aio.cc | |
parent | librados/asio: add version_t to completion signatures (diff) | |
download | ceph-7769bdb9438d48afc8500c16167f82c8f549a914.tar.xz ceph-7769bdb9438d48afc8500c16167f82c8f549a914.zip |
rgw/rados: rgw_rados_operate() takes version_t*
instead of calling ioctx.get_last_version() after a rados operation,
callers now pass version_t* as an output parameter. in the null_yield
case, that version is assigned to ioctx.get_last_version() as normal. in
the async case, we get the version out of librados::async_operate()'s
return value
Fixes: https://tracker.ceph.com/issues/63935
Signed-off-by: Casey Bodley <cbodley@redhat.com>
Diffstat (limited to 'src/rgw/rgw_aio.cc')
-rw-r--r-- | src/rgw/rgw_aio.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/rgw/rgw_aio.cc b/src/rgw/rgw_aio.cc index 7fba58ad63f..d2e56c57298 100644 --- a/src/rgw/rgw_aio.cc +++ b/src/rgw/rgw_aio.cc @@ -76,12 +76,12 @@ struct Handler { librados::IoCtx ctx; AioResult& r; // write callback - void operator()(boost::system::error_code ec) const { + void operator()(boost::system::error_code ec, version_t) const { r.result = -ec.value(); throttle->put(r); } // read callback - void operator()(boost::system::error_code ec, bufferlist bl) const { + void operator()(boost::system::error_code ec, version_t, bufferlist bl) const { r.result = -ec.value(); r.data = std::move(bl); throttle->put(r); |