]> 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 41358/head
authorYongseok Oh <yongseok.oh@linecorp.com>
Mon, 17 May 2021 05:11:50 +0000 (05:11 +0000)
committerYongseok Oh <yongseok.oh@linecorp.com>
Mon, 17 May 2021 05:11:50 +0000 (05:11 +0000)
Signed-off-by: Yongseok Oh <yongseok.oh@linecorp.com>
src/mds/MDCache.cc

index 7fd265fefce775428808cbbbe97aeeeb3d48ad61..b9005c013dbb8f04890050f6659674cfe9291a0d 100644 (file)
@@ -6360,14 +6360,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();