From dafef3c2e6f4f812dfed4ff24039779a82cd021b Mon Sep 17 00:00:00 2001 From: "Yan, Zheng" Date: Fri, 28 Nov 2014 21:23:36 +0800 Subject: [PATCH] mds: add asok command to force MDS readonly Signed-off-by: Yan, Zheng --- src/mds/MDS.cc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/mds/MDS.cc b/src/mds/MDS.cc index 6060014d106..158602fd775 100644 --- a/src/mds/MDS.cc +++ b/src/mds/MDS.cc @@ -299,6 +299,10 @@ bool MDS::asok_command(string command, cmdmap_t& cmdmap, string format, command_flush_path(f, path); } else if (command == "flush journal") { command_flush_journal(f); + } else if (command == "force_readonly") { + mds_lock.Lock(); + mdcache->force_readonly(); + mds_lock.Unlock(); } f->flush(ss); delete f; @@ -478,6 +482,11 @@ void MDS::set_up_admin_socket() asok_hook, "Flush the journal to the backing store"); assert(0 == r); + r = admin_socket->register_command("force_readonly", + "force_readonly", + asok_hook, + "Force MDS to read-only mode"); + assert(0 == r); } void MDS::clean_up_admin_socket() -- 2.47.3