From d20dc8691e984fc4b3966a478b64f027ea7f8a05 Mon Sep 17 00:00:00 2001 From: Anu Engineer Date: Fri, 16 Dec 2016 09:46:21 -0800 Subject: [PATCH] HDFS-9911. TestDataNodeLifeline Fails intermittently. Contributed by Yiqun Lin (cherry picked from commit a95639068c99ebcaefe8b6c4268449d12a6577d6) --- .../org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java index 5bfdaecf8c6..c605588f163 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/BPServiceActor.java @@ -1083,7 +1083,7 @@ static class Scheduler { volatile long nextHeartbeatTime = monotonicNow(); @VisibleForTesting - volatile long nextLifelineTime = monotonicNow(); + volatile long nextLifelineTime; @VisibleForTesting volatile long lastBlockReportTime = monotonicNow(); @@ -1111,6 +1111,7 @@ static class Scheduler { this.lifelineIntervalMs = lifelineIntervalMs; this.blockReportIntervalMs = blockReportIntervalMs; this.slowPeersReportIntervalMs = slowPeersReportIntervalMs; + scheduleNextLifeline(nextHeartbeatTime); } // This is useful to make sure NN gets Heartbeat before Blockreport