From: dongdong tao Date: Fri, 19 Jan 2018 03:50:51 +0000 (+0800) Subject: cephfs-journal-tool: move shutdown to the deconstructor of MDSUtility X-Git-Tag: v12.2.5~100^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=9a1a15e31f6d38d3c7414eea47cf89678ae17ece;p=ceph.git cephfs-journal-tool: move shutdown to the deconstructor of MDSUtility Fixes: http://tracker.ceph.com/issues/22734 Signed-off-by: dongdong tao (cherry picked from commit ea0e8f0c581527bdc4bace78306cd7601997b584) --- diff --git a/src/tools/cephfs/JournalTool.cc b/src/tools/cephfs/JournalTool.cc index d134769f8b2c..e35cf7922063 100644 --- a/src/tools/cephfs/JournalTool.cc +++ b/src/tools/cephfs/JournalTool.cc @@ -573,7 +573,6 @@ int JournalTool::journal_export(std::string const &path, bool import) } else { r = dumper.dump(path.c_str()); } - dumper.shutdown(); } return r; @@ -598,7 +597,6 @@ int JournalTool::journal_reset(bool hard) } else { r = resetter.reset(mds_role_t(role_selector.get_ns(), rank)); } - resetter.shutdown(); return r; } diff --git a/src/tools/cephfs/MDSUtility.cc b/src/tools/cephfs/MDSUtility.cc index 9a345f49d1aa..80ce3c34934e 100644 --- a/src/tools/cephfs/MDSUtility.cc +++ b/src/tools/cephfs/MDSUtility.cc @@ -23,7 +23,8 @@ MDSUtility::MDSUtility() : objecter(NULL), lock("MDSUtility::lock"), finisher(g_ceph_context, "MDSUtility", "fn_mds_utility"), - waiting_for_mds_map(NULL) + waiting_for_mds_map(NULL), + inited(false) { monc = new MonClient(g_ceph_context); messenger = Messenger::create_client_messenger(g_ceph_context, "mds"); @@ -34,6 +35,9 @@ MDSUtility::MDSUtility() : MDSUtility::~MDSUtility() { + if (inited) { + shutdown(); + } delete objecter; delete monc; delete messenger; @@ -107,6 +111,7 @@ int MDSUtility::init() finisher.start(); + inited = true; return 0; } diff --git a/src/tools/cephfs/MDSUtility.h b/src/tools/cephfs/MDSUtility.h index 9951b3b9ce89..21164bfaa87e 100644 --- a/src/tools/cephfs/MDSUtility.h +++ b/src/tools/cephfs/MDSUtility.h @@ -41,6 +41,7 @@ protected: Context *waiting_for_mds_map; + bool inited; public: MDSUtility(); ~MDSUtility() override; diff --git a/src/tools/cephfs/cephfs-data-scan.cc b/src/tools/cephfs/cephfs-data-scan.cc index dcf83bbfd1c3..e7034539bd77 100644 --- a/src/tools/cephfs/cephfs-data-scan.cc +++ b/src/tools/cephfs/cephfs-data-scan.cc @@ -39,7 +39,6 @@ int main(int argc, const char **argv) std::cerr << "Error (" << cpp_strerror(rc) << ")" << std::endl; } - data_scan.shutdown(); return rc; } diff --git a/src/tools/cephfs/cephfs-journal-tool.cc b/src/tools/cephfs/cephfs-journal-tool.cc index 2764feb0fcb3..e4c1287d4557 100644 --- a/src/tools/cephfs/cephfs-journal-tool.cc +++ b/src/tools/cephfs/cephfs-journal-tool.cc @@ -52,8 +52,6 @@ int main(int argc, const char **argv) std::cerr << "Error (" << cpp_strerror(rc) << ")" << std::endl; } - jt.shutdown(); - return rc; } diff --git a/src/tools/cephfs/cephfs-table-tool.cc b/src/tools/cephfs/cephfs-table-tool.cc index ef09df494735..124ff23468c5 100644 --- a/src/tools/cephfs/cephfs-table-tool.cc +++ b/src/tools/cephfs/cephfs-table-tool.cc @@ -39,8 +39,6 @@ int main(int argc, const char **argv) std::cerr << "Error (" << cpp_strerror(rc) << ")" << std::endl; } - tt.shutdown(); - return rc; }