From: Yingxin Cheng Date: Fri, 2 Apr 2021 06:51:02 +0000 (+0800) Subject: crimson/onode-staged-tree: disable concurrent gc X-Git-Tag: v17.1.0~2110^2~32 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=609eba25623300f321a3eb99ed9ebe530f0edc26;p=ceph.git crimson/onode-staged-tree: disable concurrent gc Fix test/perf hang according to 947b103eed0720bc6276274b1b707b221b895a62 Signed-off-by: Yingxin Cheng --- diff --git a/src/test/crimson/seastore/onode_tree/test_staged_fltree.cc b/src/test/crimson/seastore/onode_tree/test_staged_fltree.cc index 3a5bde874964..52dea7e54e13 100644 --- a/src/test/crimson/seastore/onode_tree/test_staged_fltree.cc +++ b/src/test/crimson/seastore/onode_tree/test_staged_fltree.cc @@ -1214,16 +1214,19 @@ TEST_F(d_seastore_tm_test_t, 6_random_insert_leaf_node) auto t = tm->create_transaction(); tree->bootstrap(*t).unsafe_get(); tm->submit_transaction(std::move(t)).unsafe_get(); + segment_cleaner->run_until_halt().get0(); } { auto t = tm->create_transaction(); tree->insert(*t).unsafe_get(); tm->submit_transaction(std::move(t)).unsafe_get(); + segment_cleaner->run_until_halt().get0(); } { auto t = tm->create_transaction(); tree->get_stats(*t).unsafe_get(); tm->submit_transaction(std::move(t)).unsafe_get(); + segment_cleaner->run_until_halt().get0(); } if constexpr (TEST_SEASTORE) { logger().info("seastore replay begin"); diff --git a/src/tools/crimson/perf_staged_fltree.cc b/src/tools/crimson/perf_staged_fltree.cc index cdda6a9f0dfa..09f8ddc815da 100644 --- a/src/tools/crimson/perf_staged_fltree.cc +++ b/src/tools/crimson/perf_staged_fltree.cc @@ -35,12 +35,14 @@ class PerfTree : public TMTestState { auto t = tm->create_transaction(); tree->bootstrap(*t).unsafe_get(); tm->submit_transaction(std::move(t)).unsafe_get(); + segment_cleaner->run_until_halt().get0(); } { auto t = tm->create_transaction(); tree->insert(*t).unsafe_get(); auto start_time = mono_clock::now(); tm->submit_transaction(std::move(t)).unsafe_get(); + segment_cleaner->run_until_halt().get0(); std::chrono::duration duration = mono_clock::now() - start_time; logger().warn("submit_transaction() done! {}s", duration.count()); } @@ -48,6 +50,7 @@ class PerfTree : public TMTestState { auto t = tm->create_transaction(); tree->get_stats(*t).unsafe_get(); tm->submit_transaction(std::move(t)).unsafe_get(); + segment_cleaner->run_until_halt().get0(); } { // Note: tm->create_weak_transaction() can also work, but too slow.