From: Sage Weil Date: Mon, 23 Dec 2013 21:13:06 +0000 (-0800) Subject: librados: deprecate aio_operate() read variant that takes snapid X-Git-Tag: v0.75~37^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=006449ddb5fdcbc96afa5f73ede62e82ef5e89e9;p=ceph.git librados: deprecate aio_operate() read variant that takes snapid The argument was ignored. Signed-off-by: Sage Weil --- diff --git a/src/include/rados/librados.hpp b/src/include/rados/librados.hpp index 2ce85310a025..2582167c2fea 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 dd199abd0ec8..ad93689fa308 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 11e111f75142..6e4a05e6945c 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 da02a34ed329..ddb882dfbbb9 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 c866c2ff9694..883234f0ee52 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 ad6965debfb5..6caefe4afb42 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);