From 391f3c8790e58d7f67b7bf93665775d5c4191b8c Mon Sep 17 00:00:00 2001 From: Patrick Donnelly Date: Thu, 9 Sep 2021 17:53:55 -0400 Subject: [PATCH] mds: add config to mark rank damaged in standby-replay For testing. Signed-off-by: Patrick Donnelly --- src/common/options/mds.yaml.in | 6 ++++++ src/mds/MDSRank.cc | 7 ++++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/src/common/options/mds.yaml.in b/src/common/options/mds.yaml.in index 870cdd60a8a76..dec1a67b86986 100644 --- a/src/common/options/mds.yaml.in +++ b/src/common/options/mds.yaml.in @@ -19,6 +19,12 @@ options: - mds flags: - runtime +- name: mds_standby_replay_damaged + type: bool + level: dev + default: false + flags: + - runtime - name: mds_numa_node type: int level: advanced diff --git a/src/mds/MDSRank.cc b/src/mds/MDSRank.cc index 91d58a19df5db..ce5fce57e59cf 100644 --- a/src/mds/MDSRank.cc +++ b/src/mds/MDSRank.cc @@ -16,6 +16,7 @@ #include #include "common/debug.h" #include "common/errno.h" +#include "common/likely.h" #include "common/async/blocked_completion.h" #include "messages/MClientRequestForward.h" @@ -1733,8 +1734,12 @@ void MDSRank::replay_start() { dout(1) << "replay_start" << dendl; - if (is_standby_replay()) + if (is_standby_replay()) { standby_replaying = true; + if (unlikely(g_conf().get_val("mds_standby_replay_damaged"))) { + damaged(); + } + } // Check if we need to wait for a newer OSD map before starting bool const ready = objecter->with_osdmap( -- 2.39.5