From d8b58354277be06acce991ca7347717153ff2604 Mon Sep 17 00:00:00 2001 From: obdev Date: Wed, 2 Aug 2023 01:54:07 +0000 Subject: [PATCH] put tablet_gc_offline before offline_compaction_ in ls offline --- src/storage/ls/ob_ls.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/storage/ls/ob_ls.cpp b/src/storage/ls/ob_ls.cpp index 30baf28b62..c72c88589b 100755 --- a/src/storage/ls/ob_ls.cpp +++ b/src/storage/ls/ob_ls.cpp @@ -904,6 +904,10 @@ int ObLS::offline_(const int64_t start_ts) // force set allocators frozen to reduce active tenant_memory } else if (OB_FAIL(ls_tablet_svr_.set_frozen_for_all_memtables())) { LOG_WARN("tablet service offline failed", K(ret), K(ls_meta_)); + } + // make sure no new dag(tablet_gc_handler may generate new dag) is generated after offline offline_compaction_ + else if (OB_FAIL(tablet_gc_handler_.offline())) { + LOG_WARN("tablet gc handler offline failed", K(ret), K(ls_meta_)); } else if (OB_FAIL(offline_compaction_())) { LOG_WARN("compaction offline failed", K(ret), K(ls_meta_)); } else if (OB_FAIL(ls_wrs_handler_.offline())) { @@ -919,8 +923,6 @@ int ObLS::offline_(const int64_t start_ts) // force release memtables created by force_tablet_freeze called during major } else if (OB_FAIL(ls_tablet_svr_.offline())) { LOG_WARN("tablet service offline failed", K(ret), K(ls_meta_)); - } else if (OB_FAIL(tablet_gc_handler_.offline())) { - LOG_WARN("tablet gc handler offline failed", K(ret), K(ls_meta_)); } else if (OB_FAIL(tablet_empty_shell_handler_.offline())) { LOG_WARN("tablet_empty_shell_handler failed", K(ret), K(ls_meta_)); } else {