From c43d6f799e25ac8ac4b975d28332f03f4c2bf090 Mon Sep 17 00:00:00 2001 From: Jeff Layton Date: Thu, 3 Mar 2022 16:19:07 -0500 Subject: [PATCH] ceph_test_rados_io_pp: verify sparse_read behavior with non-zero truncate_seq Fixes: http://tracker.ceph.com/issues/54280 Signed-off-by: Jeff Layton (cherry picked from commit 387c7f33e232a4e982aeba3b185923efe42137aa) --- src/test/librados/io_cxx.cc | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/src/test/librados/io_cxx.cc b/src/test/librados/io_cxx.cc index 64d03380b765d..455654b6e923f 100644 --- a/src/test/librados/io_cxx.cc +++ b/src/test/librados/io_cxx.cc @@ -201,6 +201,19 @@ TEST_F(LibRadosIoPP, SparseReadOpPP) { ASSERT_EQ(0, rval); assert_eq_sparse(bl, extents, read_bl); } + { + bufferlist bl; + bl.append(buf, sizeof(buf) / 2); + + std::map extents; + bufferlist read_bl; + int rval = -1; + ObjectReadOperation op; + op.sparse_read(0, sizeof(buf), &extents, &read_bl, &rval, sizeof(buf) / 2, 1); + ASSERT_EQ(0, ioctx.operate("foo", &op, nullptr)); + ASSERT_EQ(0, rval); + assert_eq_sparse(bl, extents, read_bl); + } } TEST_F(LibRadosIoPP, RoundTripPP) { -- 2.39.5