This is an automated email from the ASF dual-hosted git repository.

jiangtian pushed a commit to branch debug_apply_stuck
in repository https://gitbox.apache.org/repos/asf/iotdb.git

commit 51d937bc731c7fced4a0872137ea6af5212fec7d
Author: jt <[email protected]>
AuthorDate: Thu Apr 22 09:54:23 2021 +0800

    fix spotless
---
 .../apache/iotdb/cluster/log/manage/RaftLogManager.java    | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git 
a/cluster/src/main/java/org/apache/iotdb/cluster/log/manage/RaftLogManager.java 
b/cluster/src/main/java/org/apache/iotdb/cluster/log/manage/RaftLogManager.java
index d818990..7b4e4dc 100644
--- 
a/cluster/src/main/java/org/apache/iotdb/cluster/log/manage/RaftLogManager.java
+++ 
b/cluster/src/main/java/org/apache/iotdb/cluster/log/manage/RaftLogManager.java
@@ -19,7 +19,6 @@
 
 package org.apache.iotdb.cluster.log.manage;
 
-import java.util.Arrays;
 import org.apache.iotdb.cluster.config.ClusterDescriptor;
 import org.apache.iotdb.cluster.exception.EntryCompactedException;
 import org.apache.iotdb.cluster.exception.EntryUnavailableException;
@@ -41,6 +40,7 @@ import org.slf4j.LoggerFactory;
 
 import java.io.IOException;
 import java.util.ArrayList;
+import java.util.Arrays;
 import java.util.Collections;
 import java.util.List;
 import java.util.concurrent.CopyOnWriteArrayList;
@@ -944,7 +944,6 @@ public abstract class RaftLogManager {
             nextToCheckIndex);
         return;
       }
-      boolean stuckLogPrinted = false;
       long waitedTime;
       long waitStartTime = System.currentTimeMillis();
       synchronized (log) {
@@ -952,12 +951,15 @@ public abstract class RaftLogManager {
           // wait until the log is applied or a newer snapshot is installed
           log.wait(5);
           waitedTime = System.currentTimeMillis() - waitStartTime;
-          if (!stuckLogPrinted && waitedTime > 60_000L) {
+          if (waitedTime > 60_000L) {
             Thread applyingThread = log.getApplyingThread();
-            logger.error("The application of log {} is stuck for over 1 
minutes, processing "
-                + "thread: {}, thread traces: {}", log, applyingThread,
+            logger.error(
+                "The application of log {} is stuck for over 1 minutes, 
processing "
+                    + "thread: {}, thread traces: {}",
+                log,
+                applyingThread,
                 applyingThread != null ? 
Arrays.toString(applyingThread.getStackTrace()) : "null");
-            stuckLogPrinted = true;
+            waitStartTime = System.currentTimeMillis();
           }
         }
       }

Reply via email to