]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
test/crimson: implement restart() for seastore replay tests
authorYingxin Cheng <yingxin.cheng@intel.com>
Tue, 22 Dec 2020 05:43:51 +0000 (13:43 +0800)
committerYingxin Cheng <yingxin.cheng@intel.com>
Thu, 24 Dec 2020 03:45:48 +0000 (11:45 +0800)
Signed-off-by: Yingxin Cheng <yingxin.cheng@intel.com>
src/test/crimson/seastore/test_extmap_manager.cc
src/test/crimson/seastore/test_transaction_manager.cc
src/test/crimson/seastore/transaction_manager_test_state.h

index ca299e28a211421bd7d2e819d2e28cd2b1d58c87..8b25880119d8eb409d2f56e5d206229f24aeff89 100644 (file)
@@ -109,11 +109,7 @@ struct extentmap_manager_test_t :
 
   void replay() {
     logger().debug("{}: begin", __func__);
-    tm->close().unsafe_get();
-    destroy();
-    static_cast<segment_manager::EphemeralSegmentManager*>(&*segment_manager)->remount();
-    init();
-    tm->mount().unsafe_get();
+    restart();
     extmap_manager = extentmap_manager::create_extentmap_manager(*tm);
     logger().debug("{}: end", __func__);
   }
index f561cacff18bb39a0b3851fb70436300faf0fcfa..9906f938a63ba6873419f75c37b95a1582961a13 100644 (file)
@@ -176,11 +176,7 @@ struct transaction_manager_test_t :
   void replay() {
     logger().debug("{}: begin", __func__);
     EXPECT_TRUE(check_usage());
-    tm->close().unsafe_get();
-    destroy();
-    static_cast<segment_manager::EphemeralSegmentManager*>(&*segment_manager)->remount();
-    init();
-    tm->mount().unsafe_get();
+    restart();
     logger().debug("{}: end", __func__);
   }
 
index d13d4c65ee3a58c89657e9ef24ee9f46ec823669..bf24409232299f02b54118157e4d603e12a3cd30 100644 (file)
@@ -52,6 +52,14 @@ protected:
     segment_cleaner.reset();
   }
 
+  void restart() {
+    tm->close().unsafe_get();
+    destroy();
+    static_cast<segment_manager::EphemeralSegmentManager*>(&*segment_manager)->remount();
+    init();
+    tm->mount().unsafe_get();
+  }
+
   seastar::future<> tm_setup() {
     return segment_manager->init(
     ).safe_then([this] {