From 94f9d212ad85c90e5fc8712017d4254d3afd6d18 Mon Sep 17 00:00:00 2001 From: Ajay Jadhav Date: Thu, 2 Feb 2017 16:27:30 -0800 Subject: [PATCH] YARN-6188. Scoping stringbuilder to avoid OOM exception in case of large number of decomissioning nodes --- .../yarn/server/resourcemanager/DecommissioningNodesWatcher.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/DecommissioningNodesWatcher.java b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/DecommissioningNodesWatcher.java index 376b503..9631803 100644 --- a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/DecommissioningNodesWatcher.java +++ b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/DecommissioningNodesWatcher.java @@ -385,9 +385,9 @@ private void logDecommissioningNodesStatus() { if (!LOG.isDebugEnabled() || decomNodes.size() == 0) { return; } - StringBuilder sb = new StringBuilder(); long now = mclock.getTime(); for (DecommissioningNodeContext d : decomNodes.values()) { + StringBuilder sb = new StringBuilder(); DecommissioningNodeStatus s = checkDecommissioningStatus(d.nodeId); sb.append(String.format( "%n %-34s %4ds fresh:%3ds containers:%2d %14s", @@ -413,8 +413,8 @@ private void logDecommissioningNodesStatus() { (mclock.getTime() - rmApp.getStartTime()) / 1000)); } } + LOG.debug("Decommissioning node: " + sb.toString()); } - LOG.info("Decommissioning Nodes: " + sb.toString()); } // Read possible new DECOMMISSIONING_TIMEOUT_KEY from yarn-site.xml. -- 2.10.1 (Apple Git-78)