From cd1b41de75c52a00b94b005b656dfd7acf1934ea Mon Sep 17 00:00:00 2001 From: N Balachandran Date: Wed, 4 Dec 2024 17:10:13 +0530 Subject: [PATCH] cls/rbd: fix mirror_image_map_list object The rbd-mirror image map is stored in the rbd_mirror_leader object. Fixed mirror_image_map_list() to operate on the correct object. Fixes: https://tracker.ceph.com/issues/69112 Signed-off-by: N Balachandran --- src/cls/rbd/cls_rbd_client.cc | 2 +- src/test/cls_rbd/test_cls_rbd.cc | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/src/cls/rbd/cls_rbd_client.cc b/src/cls/rbd/cls_rbd_client.cc index 559ac221f89ad..fca2d0ea18b7a 100644 --- a/src/cls/rbd/cls_rbd_client.cc +++ b/src/cls/rbd/cls_rbd_client.cc @@ -2538,7 +2538,7 @@ int mirror_image_map_list( mirror_image_map_list_start(&op, start_after, max_read); bufferlist out_bl; - int r = ioctx->operate(RBD_MIRRORING, &op, &out_bl); + int r = ioctx->operate(RBD_MIRROR_LEADER, &op, &out_bl); if (r < 0) { return r; } diff --git a/src/test/cls_rbd/test_cls_rbd.cc b/src/test/cls_rbd/test_cls_rbd.cc index 7eb03cc42f542..4f39a8e1eabf8 100644 --- a/src/test/cls_rbd/test_cls_rbd.cc +++ b/src/test/cls_rbd/test_cls_rbd.cc @@ -2156,7 +2156,7 @@ TEST_F(TestClsRbd, mirror_image_map) { librados::IoCtx ioctx; ASSERT_EQ(0, _rados.ioctx_create(_pool_name.c_str(), ioctx)); - ioctx.remove(RBD_MIRRORING); + ioctx.remove(RBD_MIRROR_LEADER); std::map image_mapping; ASSERT_EQ(-ENOENT, mirror_image_map_list(&ioctx, "", 0, &image_mapping)); @@ -2177,7 +2177,7 @@ TEST_F(TestClsRbd, mirror_image_map) mirror_image_map_update(&op, global_image_id, mirror_image_map); } - ASSERT_EQ(0, ioctx.operate(RBD_MIRRORING, &op)); + ASSERT_EQ(0, ioctx.operate(RBD_MIRROR_LEADER, &op)); } ASSERT_EQ(0, mirror_image_map_list(&ioctx, "", 1000, &image_mapping)); @@ -2203,7 +2203,7 @@ TEST_F(TestClsRbd, mirror_image_map) librados::ObjectWriteOperation op; mirror_image_map_remove(&op, "1"); mirror_image_map_update(&op, "10", expected_mirror_image_map); - ASSERT_EQ(0, ioctx.operate(RBD_MIRRORING, &op)); + ASSERT_EQ(0, ioctx.operate(RBD_MIRROR_LEADER, &op)); ASSERT_EQ(0, mirror_image_map_list(&ioctx, "0", 1, &image_mapping)); ASSERT_EQ(1U, image_mapping.size()); -- 2.39.5