You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-commits@hadoop.apache.org by jl...@apache.org on 2016/02/02 20:31:17 UTC

hadoop git commit: MAPREDUCE-6621. Memory Leak in JobClient#submitJobInternal(). Contributed by Xuan Gong

Repository: hadoop
Updated Branches:
  refs/heads/trunk dd9ebf6ee -> 43e669b22


MAPREDUCE-6621. Memory Leak in JobClient#submitJobInternal(). Contributed by Xuan Gong


Project: http://git-wip-us.apache.org/repos/asf/hadoop/repo
Commit: http://git-wip-us.apache.org/repos/asf/hadoop/commit/43e669b2
Tree: http://git-wip-us.apache.org/repos/asf/hadoop/tree/43e669b2
Diff: http://git-wip-us.apache.org/repos/asf/hadoop/diff/43e669b2

Branch: refs/heads/trunk
Commit: 43e669b22d9ac0b81ab8cc397c5d6d92bac986c6
Parents: dd9ebf6
Author: Jason Lowe <jl...@apache.org>
Authored: Tue Feb 2 19:30:45 2016 +0000
Committer: Jason Lowe <jl...@apache.org>
Committed: Tue Feb 2 19:30:45 2016 +0000

----------------------------------------------------------------------
 hadoop-mapreduce-project/CHANGES.txt                         | 6 ++++++
 .../src/main/java/org/apache/hadoop/mapred/JobClient.java    | 8 ++++++++
 2 files changed, 14 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/hadoop/blob/43e669b2/hadoop-mapreduce-project/CHANGES.txt
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/CHANGES.txt b/hadoop-mapreduce-project/CHANGES.txt
index 55284da..a69453f 100644
--- a/hadoop-mapreduce-project/CHANGES.txt
+++ b/hadoop-mapreduce-project/CHANGES.txt
@@ -739,6 +739,9 @@ Release 2.7.3 - UNRELEASED
     MAPREDUCE-6618. YarnClientProtocolProvider leaking the YarnClient thread.
     (Xuan Gong via jlowe)
 
+    MAPREDUCE-6621. Memory Leak in JobClient#submitJobInternal() (Xuan Gong
+    via jlowe)
+
 Release 2.7.2 - 2016-01-25
 
   INCOMPATIBLE CHANGES
@@ -1047,6 +1050,9 @@ Release 2.6.4 - UNRELEASED
     MAPREDUCE-6618. YarnClientProtocolProvider leaking the YarnClient thread.
     (Xuan Gong via jlowe)
 
+    MAPREDUCE-6621. Memory Leak in JobClient#submitJobInternal() (Xuan Gong
+    via jlowe)
+
 Release 2.6.3 - 2015-12-17
 
   INCOMPATIBLE CHANGES

http://git-wip-us.apache.org/repos/asf/hadoop/blob/43e669b2/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/JobClient.java
----------------------------------------------------------------------
diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/JobClient.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/JobClient.java
index baa6221..c43fc0a 100644
--- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/JobClient.java
+++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/JobClient.java
@@ -577,10 +577,18 @@ public class JobClient extends CLI implements AutoCloseable {
           return job;
         }
       });
+
+      Cluster prev = cluster;
       // update our Cluster instance with the one created by Job for submission
       // (we can't pass our Cluster instance to Job, since Job wraps the config
       // instance, and the two configs would then diverge)
       cluster = job.getCluster();
+
+      // It is important to close the previous cluster instance
+      // to cleanup resources.
+      if (prev != null) {
+        prev.close();
+      }
       return new NetworkedJob(job);
     } catch (InterruptedException ie) {
       throw new IOException("interrupted", ie);