From 006449ddb5fdcbc96afa5f73ede62e82ef5e89e9 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 23 Dec 2013 13:13:06 -0800 Subject: [PATCH] librados: deprecate aio_operate() read variant that takes snapid The argument was ignored. Signed-off-by: Sage Weil --- src/include/rados/librados.hpp | 6 ++++++ src/librados/librados.cc | 21 ++++++++++++++++++++- src/librbd/AioRequest.cc | 2 +- src/librbd/LibrbdWriteback.cc | 2 +- src/test/librados/tier.cc | 2 +- src/test/osd/RadosModel.h | 2 -- 6 files changed, 29 insertions(+), 6 deletions(-) diff --git a/src/include/rados/librados.hpp b/src/include/rados/librados.hpp index 2ce85310a0254..2582167c2fea2 100644 --- a/src/include/rados/librados.hpp +++ b/src/include/rados/librados.hpp @@ -777,8 +777,14 @@ namespace librados std::vector& snaps); int aio_operate(const std::string& oid, AioCompletion *c, ObjectReadOperation *op, bufferlist *pbl); + int aio_operate(const std::string& oid, AioCompletion *c, ObjectReadOperation *op, snap_t snapid, int flags, + bufferlist *pbl) + __attribute__ ((deprecated ("use aio_operate without snapid argument"))); + + int aio_operate(const std::string& oid, AioCompletion *c, + ObjectReadOperation *op, int flags, bufferlist *pbl); // watch/notify diff --git a/src/librados/librados.cc b/src/librados/librados.cc index dd199abd0ec8e..ad93689fa308b 100644 --- a/src/librados/librados.cc +++ b/src/librados/librados.cc @@ -1020,9 +1020,28 @@ int librados::IoCtx::aio_operate(const std::string& oid, AioCompletion *c, 0, pbl); } +// deprecated int librados::IoCtx::aio_operate(const std::string& oid, AioCompletion *c, librados::ObjectReadOperation *o, - snap_t snapid, int flags, bufferlist *pbl) + snap_t snapid_unused_deprecated, + int flags, bufferlist *pbl) +{ + object_t obj(oid); + int op_flags = 0; + if (flags & OPERATION_BALANCE_READS) + op_flags |= CEPH_OSD_FLAG_BALANCE_READS; + if (flags & OPERATION_LOCALIZE_READS) + op_flags |= CEPH_OSD_FLAG_LOCALIZE_READS; + if (flags & OPERATION_ORDER_READS_WRITES) + op_flags |= CEPH_OSD_FLAG_RWORDERED; + + return io_ctx_impl->aio_operate_read(obj, (::ObjectOperation*)o->impl, c->pc, + op_flags, pbl); +} + +int librados::IoCtx::aio_operate(const std::string& oid, AioCompletion *c, + librados::ObjectReadOperation *o, + int flags, bufferlist *pbl) { object_t obj(oid); return io_ctx_impl->aio_operate_read(obj, (::ObjectOperation*)o->impl, c->pc, diff --git a/src/librbd/AioRequest.cc b/src/librbd/AioRequest.cc index 11e111f75142b..6e4a05e6945c1 100644 --- a/src/librbd/AioRequest.cc +++ b/src/librbd/AioRequest.cc @@ -99,7 +99,7 @@ namespace librbd { } else { op.read(m_object_off, m_object_len, &m_read_data, NULL); } - r = m_ioctx->aio_operate(m_oid, rados_completion, &op, m_snap_id, flags, NULL); + r = m_ioctx->aio_operate(m_oid, rados_completion, &op, flags, NULL); rados_completion->release(); return r; diff --git a/src/librbd/LibrbdWriteback.cc b/src/librbd/LibrbdWriteback.cc index da02a34ed329b..ddb882dfbbb9c 100644 --- a/src/librbd/LibrbdWriteback.cc +++ b/src/librbd/LibrbdWriteback.cc @@ -103,7 +103,7 @@ namespace librbd { op.read(off, len, pbl, NULL); int flags = m_ictx->get_read_flags(snapid); int r = m_ictx->data_ctx.aio_operate(oid.name, rados_completion, &op, - snapid, flags, NULL); + flags, NULL); rados_completion->release(); assert(r >= 0); } diff --git a/src/test/librados/tier.cc b/src/test/librados/tier.cc index c866c2ff96946..883234f0ee529 100644 --- a/src/test/librados/tier.cc +++ b/src/test/librados/tier.cc @@ -154,7 +154,7 @@ TEST(LibRadosTier, Overlay) { op.read(0, 1, &bl, NULL); librados::AioCompletion *completion = cluster.aio_create_completion(); ASSERT_EQ(0, base_ioctx.aio_operate( - "foo", completion, &op, librados::SNAP_HEAD, + "foo", completion, &op, librados::OPERATION_IGNORE_OVERLAY, NULL)); completion->wait_for_safe(); ASSERT_EQ(0, completion->get_return_value()); diff --git a/src/test/osd/RadosModel.h b/src/test/osd/RadosModel.h index ad6965debfb5f..6caefe4afb427 100644 --- a/src/test/osd/RadosModel.h +++ b/src/test/osd/RadosModel.h @@ -857,7 +857,6 @@ public: context->io_ctx.aio_operate( context->prefix+oid, rcompletion, &read_op, - librados::SNAP_HEAD, librados::OPERATION_ORDER_READS_WRITES, // order wrt previous write/update 0); } @@ -1482,7 +1481,6 @@ public: NULL); rd_op.stat(NULL, NULL, NULL); context->io_ctx.aio_operate(context->prefix+oid, comp_racing_read, &rd_op, - librados::SNAP_HEAD, librados::OPERATION_ORDER_READS_WRITES, // order wrt previous write/update NULL); -- 2.39.5