From af688579a6272ad0dbd5a8c44372ca4c6c6f758c Mon Sep 17 00:00:00 2001 From: Inigo Goiri Date: Thu, 11 Jul 2019 08:55:44 -0700 Subject: [PATCH] HDFS-14624. When decommissioning a node, log remaining blocks to replicate periodically. Contributed by Stephen O'Donnell. (cherry picked from commit 5747f6cff54f79de0e6439d6c77c2ed437989f10) --- .../server/blockmanagement/DatanodeAdminManager.java | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminManager.java b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminManager.java index 6710c397d61..f30066ae972 100644 --- a/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminManager.java +++ b/hadoop-hdfs-project/hadoop-hdfs/src/main/java/org/apache/hadoop/hdfs/server/blockmanagement/DatanodeAdminManager.java @@ -507,8 +507,10 @@ public class DatanodeAdminManager { namesystem.writeUnlock(); } if (numBlocksChecked + numNodesChecked > 0) { - LOG.info("Checked {} blocks and {} nodes this tick", numBlocksChecked, - numNodesChecked); + LOG.info("Checked {} blocks and {} nodes this tick. {} nodes are now " + + "in maintenance or transitioning state. {} nodes pending.", + numBlocksChecked, numNodesChecked, outOfServiceNodeBlocks.size(), + pendingNodes.size()); } } @@ -599,14 +601,14 @@ public class DatanodeAdminManager { LOG.debug("Node {} is sufficiently replicated and healthy, " + "marked as {}.", dn, dn.getAdminState()); } else { - LOG.debug("Node {} {} healthy." + LOG.info("Node {} {} healthy." + " It needs to replicate {} more blocks." + " {} is still in progress.", dn, isHealthy ? "is": "isn't", blocks.size(), dn.getAdminState()); } } else { - LOG.debug("Node {} still has {} blocks to replicate " - + "before it is a candidate to finish {}.", + LOG.info("Node {} still has {} blocks to replicate " + + "before it is a candidate to finish {}.", dn, blocks.size(), dn.getAdminState()); } } catch (Exception e) {