]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
mds: add heartbeat_reset() in start_files_to_reover() to avoid timedout issue 45157/head
authorYongseok Oh <yongseok.oh@linecorp.com>
Mon, 17 May 2021 05:11:50 +0000 (05:11 +0000)
committerDan van der Ster <daniel.vanderster@cern.ch>
Fri, 25 Feb 2022 08:15:03 +0000 (09:15 +0100)
Signed-off-by: Yongseok Oh <yongseok.oh@linecorp.com>
(cherry picked from commit f43f1d85cf162a3204cd42af620303067c9d162f)

src/mds/MDCache.cc

index adf46a839e61e4d760eb1d7bef06a7b38e4e886a..cc274070b45faa0cd8c39178a5c13f219bf6f11f 100644 (file)
@@ -6390,14 +6390,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();