Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.8.0, 2.7.3, 2.6.4, 3.0.0-alpha1
    • Component/s: None
    • Labels:
      None
    • Target Version/s:
    • Hadoop Flags:
      Reviewed

      Description

      In JobClient:

      public RunningJob submitJobInternal(final JobConf conf)
            throws FileNotFoundException, IOException {
          try {
            conf.setBooleanIfUnset("mapred.mapper.new-api", false);
            conf.setBooleanIfUnset("mapred.reducer.new-api", false);
            Job job = clientUgi.doAs(new PrivilegedExceptionAction<Job> () {
              @Override
              public Job run() throws IOException, ClassNotFoundException, 
                InterruptedException {
                Job job = Job.getInstance(conf);
                job.submit();
                return job;
              }
            });
      
            // 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();
      
            return new NetworkedJob(job);
          } catch (InterruptedException ie) {
            throw new IOException("interrupted", ie);
          }
        }
      

      We will replace the cluster object with the cluster object from Job, but the previous old cluster object would never be closed.

      1. MAPREDUCE-6621.1.patch
        2 kB
        Xuan Gong
      2. MAPREDUCE-6621.2.patch
        1 kB
        Xuan Gong

        Issue Links

          Activity

          Hide
          vinodkv Vinod Kumar Vavilapalli added a comment -

          Closing the JIRA as part of 2.7.3 release.

          Show
          vinodkv Vinod Kumar Vavilapalli added a comment - Closing the JIRA as part of 2.7.3 release.
          Hide
          hudson Hudson added a comment -

          FAILURE: Integrated in Hadoop-trunk-Commit #9228 (See https://builds.apache.org/job/Hadoop-trunk-Commit/9228/)
          MAPREDUCE-6621. Memory Leak in JobClient#submitJobInternal(). (jlowe: rev 43e669b22d9ac0b81ab8cc397c5d6d92bac986c6)

          • hadoop-mapreduce-project/CHANGES.txt
          • hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/JobClient.java
          Show
          hudson Hudson added a comment - FAILURE: Integrated in Hadoop-trunk-Commit #9228 (See https://builds.apache.org/job/Hadoop-trunk-Commit/9228/ ) MAPREDUCE-6621 . Memory Leak in JobClient#submitJobInternal(). (jlowe: rev 43e669b22d9ac0b81ab8cc397c5d6d92bac986c6) hadoop-mapreduce-project/CHANGES.txt hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core/src/main/java/org/apache/hadoop/mapred/JobClient.java
          Hide
          jlowe Jason Lowe added a comment -

          Thanks, Xuan! I committed this to trunk, branch-2, branch-2.8, branch-2.7, and branch-2.6.

          Show
          jlowe Jason Lowe added a comment - Thanks, Xuan! I committed this to trunk, branch-2, branch-2.8, branch-2.7, and branch-2.6.
          Hide
          jlowe Jason Lowe added a comment -

          +1. The same TestCLI failure has been sporadically happening in other precommit builds. Filed MAPREDUCE-6625.

          Committing this.

          Show
          jlowe Jason Lowe added a comment - +1. The same TestCLI failure has been sporadically happening in other precommit builds. Filed MAPREDUCE-6625 . Committing this.
          Hide
          hadoopqa Hadoop QA added a comment -
          -1 overall



          Vote Subsystem Runtime Comment
          0 reexec 0m 0s Docker mode activated.
          +1 @author 0m 0s The patch does not contain any @author tags.
          -1 test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
          0 mvndep 0m 8s Maven dependency ordering for branch
          +1 mvninstall 6m 44s trunk passed
          +1 compile 0m 21s trunk passed with JDK v1.8.0_66
          +1 compile 0m 26s trunk passed with JDK v1.7.0_91
          +1 checkstyle 0m 18s trunk passed
          +1 mvnsite 0m 32s trunk passed
          +1 mvneclipse 0m 13s trunk passed
          +1 findbugs 1m 16s trunk passed
          +1 javadoc 0m 22s trunk passed with JDK v1.8.0_66
          +1 javadoc 0m 25s trunk passed with JDK v1.7.0_91
          0 mvndep 0m 8s Maven dependency ordering for patch
          +1 mvninstall 0m 24s the patch passed
          +1 compile 0m 19s the patch passed with JDK v1.8.0_66
          +1 javac 0m 19s the patch passed
          +1 compile 0m 22s the patch passed with JDK v1.7.0_91
          +1 javac 0m 22s the patch passed
          +1 checkstyle 0m 15s the patch passed
          +1 mvnsite 0m 30s the patch passed
          +1 mvneclipse 0m 11s the patch passed
          +1 whitespace 0m 0s Patch has no whitespace issues.
          +1 findbugs 1m 19s the patch passed
          +1 javadoc 0m 19s the patch passed with JDK v1.8.0_66
          +1 javadoc 0m 23s the patch passed with JDK v1.7.0_91
          -1 unit 1m 48s hadoop-mapreduce-client-core in the patch failed with JDK v1.8.0_66.
          +1 unit 2m 8s hadoop-mapreduce-client-core in the patch passed with JDK v1.7.0_91.
          +1 asflicense 0m 16s Patch does not generate ASF License warnings.
          20m 9s



          Reason Tests
          JDK v1.8.0_66 Failed junit tests hadoop.mapreduce.tools.TestCLI



          Subsystem Report/Notes
          Docker Image:yetus/hadoop:0ca8df7
          JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12785712/MAPREDUCE-6621.2.patch
          JIRA Issue MAPREDUCE-6621
          Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle
          uname Linux 2a5882f0e9b4 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
          Build tool maven
          Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh
          git revision trunk / 1cd55e0
          Default Java 1.7.0_91
          Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_66 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_91
          findbugs v3.0.0
          unit https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6304/artifact/patchprocess/patch-unit-hadoop-mapreduce-project_hadoop-mapreduce-client_hadoop-mapreduce-client-core-jdk1.8.0_66.txt
          unit test logs https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6304/artifact/patchprocess/patch-unit-hadoop-mapreduce-project_hadoop-mapreduce-client_hadoop-mapreduce-client-core-jdk1.8.0_66.txt
          JDK v1.7.0_91 Test Results https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6304/testReport/
          modules C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core
          Max memory used 76MB
          Powered by Apache Yetus 0.2.0-SNAPSHOT http://yetus.apache.org
          Console output https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6304/console

          This message was automatically generated.

          Show
          hadoopqa Hadoop QA added a comment - -1 overall Vote Subsystem Runtime Comment 0 reexec 0m 0s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. -1 test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. 0 mvndep 0m 8s Maven dependency ordering for branch +1 mvninstall 6m 44s trunk passed +1 compile 0m 21s trunk passed with JDK v1.8.0_66 +1 compile 0m 26s trunk passed with JDK v1.7.0_91 +1 checkstyle 0m 18s trunk passed +1 mvnsite 0m 32s trunk passed +1 mvneclipse 0m 13s trunk passed +1 findbugs 1m 16s trunk passed +1 javadoc 0m 22s trunk passed with JDK v1.8.0_66 +1 javadoc 0m 25s trunk passed with JDK v1.7.0_91 0 mvndep 0m 8s Maven dependency ordering for patch +1 mvninstall 0m 24s the patch passed +1 compile 0m 19s the patch passed with JDK v1.8.0_66 +1 javac 0m 19s the patch passed +1 compile 0m 22s the patch passed with JDK v1.7.0_91 +1 javac 0m 22s the patch passed +1 checkstyle 0m 15s the patch passed +1 mvnsite 0m 30s the patch passed +1 mvneclipse 0m 11s the patch passed +1 whitespace 0m 0s Patch has no whitespace issues. +1 findbugs 1m 19s the patch passed +1 javadoc 0m 19s the patch passed with JDK v1.8.0_66 +1 javadoc 0m 23s the patch passed with JDK v1.7.0_91 -1 unit 1m 48s hadoop-mapreduce-client-core in the patch failed with JDK v1.8.0_66. +1 unit 2m 8s hadoop-mapreduce-client-core in the patch passed with JDK v1.7.0_91. +1 asflicense 0m 16s Patch does not generate ASF License warnings. 20m 9s Reason Tests JDK v1.8.0_66 Failed junit tests hadoop.mapreduce.tools.TestCLI Subsystem Report/Notes Docker Image:yetus/hadoop:0ca8df7 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12785712/MAPREDUCE-6621.2.patch JIRA Issue MAPREDUCE-6621 Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle uname Linux 2a5882f0e9b4 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux Build tool maven Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh git revision trunk / 1cd55e0 Default Java 1.7.0_91 Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_66 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_91 findbugs v3.0.0 unit https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6304/artifact/patchprocess/patch-unit-hadoop-mapreduce-project_hadoop-mapreduce-client_hadoop-mapreduce-client-core-jdk1.8.0_66.txt unit test logs https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6304/artifact/patchprocess/patch-unit-hadoop-mapreduce-project_hadoop-mapreduce-client_hadoop-mapreduce-client-core-jdk1.8.0_66.txt JDK v1.7.0_91 Test Results https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6304/testReport/ modules C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core Max memory used 76MB Powered by Apache Yetus 0.2.0-SNAPSHOT http://yetus.apache.org Console output https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6304/console This message was automatically generated.
          Hide
          xgong Xuan Gong added a comment -

          Thanks for the comments. Jason Lowe

          Attached a new patch to address the comments.

          Show
          xgong Xuan Gong added a comment - Thanks for the comments. Jason Lowe Attached a new patch to address the comments.
          Hide
          jlowe Jason Lowe added a comment -

          Patch looks mostly good, just a nit that the comment is misleading. Setting 'prev' to null doesn't accomplish much – it's just a local variable that's just about to go out of scope anyway. The comment implies it's important that it is set to null, but it has nothing to do with the issue. The null setting from MAPREDUCE-6618 was important since those were instance variables that survive the current method.

          We can skip the unnecessary null, and the comment should just say it's important to close the previous cluster instance to cleanup resources. IMHO the debug log is overkill, but I'm OK if you want to leave it.

          Show
          jlowe Jason Lowe added a comment - Patch looks mostly good, just a nit that the comment is misleading. Setting 'prev' to null doesn't accomplish much – it's just a local variable that's just about to go out of scope anyway. The comment implies it's important that it is set to null, but it has nothing to do with the issue. The null setting from MAPREDUCE-6618 was important since those were instance variables that survive the current method. We can skip the unnecessary null, and the comment should just say it's important to close the previous cluster instance to cleanup resources. IMHO the debug log is overkill, but I'm OK if you want to leave it.
          Hide
          xgong Xuan Gong added a comment -

          Jason Lowe Could you review this please ?

          Show
          xgong Xuan Gong added a comment - Jason Lowe Could you review this please ?
          Hide
          hadoopqa Hadoop QA added a comment -
          -1 overall



          Vote Subsystem Runtime Comment
          0 reexec 0m 0s Docker mode activated.
          +1 @author 0m 0s The patch does not contain any @author tags.
          -1 test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
          +1 mvninstall 6m 44s trunk passed
          +1 compile 0m 23s trunk passed with JDK v1.8.0_66
          +1 compile 0m 22s trunk passed with JDK v1.7.0_91
          +1 checkstyle 0m 18s trunk passed
          +1 mvnsite 0m 32s trunk passed
          +1 mvneclipse 0m 13s trunk passed
          +1 findbugs 1m 9s trunk passed
          +1 javadoc 0m 26s trunk passed with JDK v1.8.0_66
          +1 javadoc 0m 26s trunk passed with JDK v1.7.0_91
          +1 mvninstall 0m 25s the patch passed
          +1 compile 0m 19s the patch passed with JDK v1.8.0_66
          +1 javac 0m 19s the patch passed
          +1 compile 0m 23s the patch passed with JDK v1.7.0_91
          +1 javac 0m 23s the patch passed
          +1 checkstyle 0m 16s the patch passed
          +1 mvnsite 0m 34s the patch passed
          +1 mvneclipse 0m 12s the patch passed
          +1 whitespace 0m 0s Patch has no whitespace issues.
          +1 findbugs 1m 30s the patch passed
          +1 javadoc 0m 27s the patch passed with JDK v1.8.0_66
          +1 javadoc 0m 24s the patch passed with JDK v1.7.0_91
          +1 unit 2m 5s hadoop-mapreduce-client-core in the patch passed with JDK v1.8.0_66.
          +1 unit 2m 10s hadoop-mapreduce-client-core in the patch passed with JDK v1.7.0_91.
          +1 asflicense 0m 19s Patch does not generate ASF License warnings.
          20m 48s



          Subsystem Report/Notes
          Docker Image:yetus/hadoop:0ca8df7
          JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12785063/MAPREDUCE-6621.1.patch
          JIRA Issue MAPREDUCE-6621
          Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle
          uname Linux d53d7c2a00e6 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
          Build tool maven
          Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh
          git revision trunk / ee005e0
          Default Java 1.7.0_91
          Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_66 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_91
          findbugs v3.0.0
          JDK v1.7.0_91 Test Results https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6296/testReport/
          modules C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core
          Max memory used 77MB
          Powered by Apache Yetus 0.2.0-SNAPSHOT http://yetus.apache.org
          Console output https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6296/console

          This message was automatically generated.

          Show
          hadoopqa Hadoop QA added a comment - -1 overall Vote Subsystem Runtime Comment 0 reexec 0m 0s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. -1 test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. +1 mvninstall 6m 44s trunk passed +1 compile 0m 23s trunk passed with JDK v1.8.0_66 +1 compile 0m 22s trunk passed with JDK v1.7.0_91 +1 checkstyle 0m 18s trunk passed +1 mvnsite 0m 32s trunk passed +1 mvneclipse 0m 13s trunk passed +1 findbugs 1m 9s trunk passed +1 javadoc 0m 26s trunk passed with JDK v1.8.0_66 +1 javadoc 0m 26s trunk passed with JDK v1.7.0_91 +1 mvninstall 0m 25s the patch passed +1 compile 0m 19s the patch passed with JDK v1.8.0_66 +1 javac 0m 19s the patch passed +1 compile 0m 23s the patch passed with JDK v1.7.0_91 +1 javac 0m 23s the patch passed +1 checkstyle 0m 16s the patch passed +1 mvnsite 0m 34s the patch passed +1 mvneclipse 0m 12s the patch passed +1 whitespace 0m 0s Patch has no whitespace issues. +1 findbugs 1m 30s the patch passed +1 javadoc 0m 27s the patch passed with JDK v1.8.0_66 +1 javadoc 0m 24s the patch passed with JDK v1.7.0_91 +1 unit 2m 5s hadoop-mapreduce-client-core in the patch passed with JDK v1.8.0_66. +1 unit 2m 10s hadoop-mapreduce-client-core in the patch passed with JDK v1.7.0_91. +1 asflicense 0m 19s Patch does not generate ASF License warnings. 20m 48s Subsystem Report/Notes Docker Image:yetus/hadoop:0ca8df7 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12785063/MAPREDUCE-6621.1.patch JIRA Issue MAPREDUCE-6621 Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle uname Linux d53d7c2a00e6 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux Build tool maven Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh git revision trunk / ee005e0 Default Java 1.7.0_91 Multi-JDK versions /usr/lib/jvm/java-8-oracle:1.8.0_66 /usr/lib/jvm/java-7-openjdk-amd64:1.7.0_91 findbugs v3.0.0 JDK v1.7.0_91 Test Results https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6296/testReport/ modules C: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core U: hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-core Max memory used 77MB Powered by Apache Yetus 0.2.0-SNAPSHOT http://yetus.apache.org Console output https://builds.apache.org/job/PreCommit-MAPREDUCE-Build/6296/console This message was automatically generated.

            People

            • Assignee:
              xgong Xuan Gong
              Reporter:
              xgong Xuan Gong
            • Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development