]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
os/bluestore: Adapt unittest for multi bdev label
authorAdam Kupczyk <akupczyk@ibm.com>
Tue, 13 Feb 2024 12:57:26 +0000 (12:57 +0000)
committerAdam Kupczyk <akupczyk@ibm.com>
Mon, 22 Jul 2024 12:36:28 +0000 (12:36 +0000)
Signed-off-by: Adam Kupczyk <akupczyk@ibm.com>
src/test/objectstore/store_test.cc

index b5a56ac06aad8f41d4c72a944e1f4484806e2a8d..87ec5b99d60a36e26df12d54ef2faae30e07889c 100644 (file)
@@ -237,6 +237,16 @@ class MultiLabelTest : public StoreTestDeferredSetup {
     if (r != 0) return false;
     return true;
   }
+  bool read_bdev_label(bluestore_bdev_label_t* label, uint64_t position) {
+    string bdev_path = get_data_dir() + "/block";
+    int r = BlueStore::read_bdev_label(g_ceph_context, bdev_path, label, position);
+    return r;
+  }
+  bool write_bdev_label(const bluestore_bdev_label_t& label, uint64_t position) {
+    string bdev_path = get_data_dir() + "/block";
+    int r = BlueStore::write_bdev_label(g_ceph_context, bdev_path, label, position);
+    return r;
+  }
   protected:
   void DeferredSetup() {
     StoreTest::SetUp();
@@ -10895,8 +10905,7 @@ TEST_P(MultiLabelTest, MultiSelectableOff) {
   }
   umount();
   bluestore_bdev_label_t label;
-  int r = BlueStore::_read_bdev_label(
-    g_ceph_context, get_data_dir() + "/block", &label, 0);
+  int r = read_bdev_label(&label, 0);
   ASSERT_EQ(r, 0);
   ASSERT_EQ(label.meta.end(), label.meta.find("multi"));
   mount();
@@ -10911,8 +10920,7 @@ TEST_P(MultiLabelTest, MultiSelectableOn) {
   }
   umount();
   bluestore_bdev_label_t label;
-  int r = BlueStore::_read_bdev_label(
-    g_ceph_context, get_data_dir() + "/block", &label, 0);
+  int r = read_bdev_label(&label, 0);
   ASSERT_EQ(r, 0);
   auto it = label.meta.find("multi");
   ASSERT_NE(label.meta.end(), it);
@@ -11030,15 +11038,13 @@ TEST_P(MultiLabelTest, SkipInvalidUUID) {
   umount();
   int r;
   bluestore_bdev_label_t label;
-  r = BlueStore::debug_read_bdev_label(g_ceph_context,
-    get_data_dir()+"/block", &label, 0);
+  r = read_bdev_label(&label, 0);
   ASSERT_EQ(r, 0);
   label.meta["epoch"] = "1";
   uuid_d new_id;
   new_id.generate_random();
   label.osd_uuid = new_id;
-  r = BlueStore::debug_write_bdev_label(g_ceph_context,
-    get_data_dir()+"/block", label, 0);
+  r = write_bdev_label(label, 0);
   ASSERT_EQ(r, 0);
 
   ASSERT_EQ(store->fsck(false), 1);
@@ -11060,24 +11066,19 @@ TEST_P(MultiLabelTest, FailAllInvalidUUID) {
   umount();
   int r;
   bluestore_bdev_label_t label;
-  r = BlueStore::debug_read_bdev_label(g_ceph_context,
-    get_data_dir()+"/block", &label, 0);
+  r = read_bdev_label(&label, 0);
   ASSERT_EQ(r, 0);
   label.meta["epoch"] = "1";
   uuid_d new_id;
   new_id.generate_random();
   label.osd_uuid = new_id;
-  r = BlueStore::debug_write_bdev_label(g_ceph_context,
-    get_data_dir()+"/block", label, 0);
+  r = write_bdev_label(label, 0);
   ASSERT_EQ(r, 0);
-  r = BlueStore::debug_write_bdev_label(g_ceph_context,
-    get_data_dir()+"/block", label, _1G);
+  r = write_bdev_label(label, _1G);
   ASSERT_EQ(r, 0);
-  r = BlueStore::debug_write_bdev_label(g_ceph_context,
-    get_data_dir()+"/block", label, 10 * _1G);
+  r = write_bdev_label(label, 10 * _1G);
   ASSERT_EQ(r, 0);
-  r = BlueStore::debug_write_bdev_label(g_ceph_context,
-    get_data_dir()+"/block", label, 100 * _1G);
+  r = write_bdev_label(label, 100 * _1G);
   ASSERT_EQ(r, 0);
 
   ASSERT_EQ(store->fsck(false), -2); // this is complete failure
@@ -11098,20 +11099,17 @@ TEST_P(MultiLabelTest, SelectNewestLabel) {
   }
   umount();
   bluestore_bdev_label_t label;
-  int r = BlueStore::_read_bdev_label(
-    g_ceph_context, get_data_dir() + "/block", &label, 0);
+  int r = read_bdev_label(&label, 0);
   ASSERT_EQ(r, 0);
   auto it = label.meta.find("epoch");
   ASSERT_NE(it, label.meta.end());
   it->second += "1"; //APPEND "1", not add
   label.meta["canary"]="alive";
-  r = BlueStore::_write_bdev_label(
-    g_ceph_context, get_data_dir() + "/block", label, {_1G});
+  r = write_bdev_label(label, _1G);
   ASSERT_EQ(r, 0);
   ASSERT_EQ(store->fsck(false), 3);
   ASSERT_EQ(store->repair(false), 0);
-  r = BlueStore::_read_bdev_label(
-    g_ceph_context, get_data_dir() + "/block", &label, 0);
+  r = read_bdev_label(&label, 0);
   ASSERT_EQ(r, 0);
   ASSERT_EQ(label.meta["canary"], "alive");
 }
@@ -11130,8 +11128,7 @@ TEST_P(MultiLabelTest, UpgradeToMultiLabel) {
   ASSERT_EQ(store->repair(false), 0);
   ASSERT_EQ(store->fsck(false), 0);
   bluestore_bdev_label_t label;
-  int r = BlueStore::_read_bdev_label(
-    g_ceph_context, get_data_dir() + "/block", &label, 0);
+  int r = read_bdev_label(&label, 0);
   ASSERT_EQ(r, 0);
   auto it = label.meta.find("epoch");
   ASSERT_NE(it, label.meta.end());
@@ -11161,8 +11158,7 @@ TEST_P(MultiLabelTest, UpgradeToMultiLabelCollisionWithBlueFS) {
   ASSERT_EQ(store->repair(false), 1);
   ASSERT_EQ(store->fsck(false), 1);
   bluestore_bdev_label_t label;
-  int r = BlueStore::_read_bdev_label(
-    g_ceph_context, get_data_dir() + "/block", &label, 0);
+  int r = read_bdev_label(&label, 0);
   ASSERT_EQ(r, 0);
   auto it = label.meta.find("epoch");
   ASSERT_NE(it, label.meta.end());
@@ -11210,8 +11206,7 @@ TEST_P(MultiLabelTest, UpgradeToMultiLabelCollisionWithObjects) {
   ASSERT_EQ(store->repair(false), 0);
   ASSERT_EQ(store->fsck(false), 0);
   bluestore_bdev_label_t label;
-  int r = BlueStore::_read_bdev_label(
-    g_ceph_context, get_data_dir() + "/block", &label, 0);
+  int r = read_bdev_label(&label, 0);
   ASSERT_EQ(r, 0);
   auto it = label.meta.find("epoch");
   ASSERT_NE(it, label.meta.end());