From 148c4f57a296db7be60eca1a1917fdc698d22e76 Mon Sep 17 00:00:00 2001 From: Yongseok Oh Date: Mon, 17 May 2021 05:11:50 +0000 Subject: [PATCH] mds: add heartbeat_reset() in start_files_to_reover() to avoid timedout issue Signed-off-by: Yongseok Oh (cherry picked from commit f43f1d85cf162a3204cd42af620303067c9d162f) --- src/mds/MDCache.cc | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/mds/MDCache.cc b/src/mds/MDCache.cc index 37a36179fd62..714b8d094aeb 100644 --- a/src/mds/MDCache.cc +++ b/src/mds/MDCache.cc @@ -6362,14 +6362,19 @@ void MDCache::identify_files_to_recover() void MDCache::start_files_to_recover() { + int count = 0; for (CInode *in : rejoin_check_q) { if (in->filelock.get_state() == LOCK_XLOCKSNAP) mds->locker->issue_caps(in); mds->locker->check_inode_max_size(in); + if (!(++count % 1000)) + mds->heartbeat_reset(); } rejoin_check_q.clear(); for (CInode *in : rejoin_recover_q) { mds->locker->file_recover(&in->filelock); + if (!(++count % 1000)) + mds->heartbeat_reset(); } if (!rejoin_recover_q.empty()) { rejoin_recover_q.clear(); -- 2.47.3