diff --git a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt index 2e5e8d19c0a..ead8912b063 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt +++ b/hadoop-hdfs-project/hadoop-hdfs/CHANGES.txt @@ -913,6 +913,8 @@ Release 2.7.0 - UNRELEASED HDFS-7816. Unable to open webhdfs paths with "+". (wheat9 via kihwal) + HDFS-7932. Speed up the shutdown of datanode during rolling upgrade.(kihwal) + BREAKDOWN OF HDFS-7584 SUBTASKS AND RELATED JIRAS HDFS-7720. Quota by Storage Type API, tools and ClientNameNode diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java index c31d2b48d97..b32a0fc895c 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/datanode/DataNode.java @@ -1731,8 +1731,9 @@ public class DataNode extends ReconfigurableBase // termination of receiver threads. if (!this.shutdownForUpgrade || (this.shutdownForUpgrade && (Time.monotonicNow() - timeNotified - > 2500))) { + > 1000))) { this.threadGroup.interrupt(); + break; } LOG.info("Waiting for threadgroup to exit, active threads is " + this.threadGroup.activeCount()); @@ -1743,8 +1744,8 @@ public class DataNode extends ReconfigurableBase Thread.sleep(sleepMs); } catch (InterruptedException e) {} sleepMs = sleepMs * 3 / 2; // exponential backoff - if (sleepMs > 1000) { - sleepMs = 1000; + if (sleepMs > 200) { + sleepMs = 200; } } this.threadGroup = null;