Uploaded image for project: 'Hadoop YARN'
  1. Hadoop YARN
  2. YARN-5373

NPE listing wildcard directory in containerLaunch

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Blocker
    • Resolution: Fixed
    • Affects Version/s: 2.9.0
    • Fix Version/s: 2.9.0, 3.0.0-alpha1
    • Component/s: nodemanager
    • Labels:
      None
    • Hadoop Flags:
      Reviewed

      Description

      YARN-4958 added support for wildcards in file localization. It introduces a NPE
      at

      for (File wildLink : directory.listFiles()) {
          sb.symlink(new Path(wildLink.toString()), new Path(wildLink.getName()));
      }
      

      When directory.listFiles returns null (only happens in a secure cluster), NPE will cause the container fail to launch.
      Hive, Oozie jobs fail as a result.

      1. YARN-5373.001.patch
        26 kB
        Daniel Templeton
      2. YARN-5373.002.patch
        26 kB
        Daniel Templeton
      3. YARN-5373.003.patch
        26 kB
        Daniel Templeton

        Issue Links

          Activity

          Hide
          hudson Hudson added a comment -

          SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #10356 (See https://builds.apache.org/job/Hadoop-trunk-Commit/10356/)
          YARN-5373. NPE listing wildcard directory in containerLaunch. (Daniel (kasha: rev cde3a00526c562a500308232e2b93498d22c90d7)

          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/DockerContainerExecutor.java
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/linux/privileged/PrivilegedOperation.java
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/container-executor.c
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/container-executor.h
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LinuxContainerExecutor.java
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/ContainerLaunch.java
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.java
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/main.c
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/TestContainerLaunch.java
          • (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/test/test-container-executor.c
          Show
          hudson Hudson added a comment - SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #10356 (See https://builds.apache.org/job/Hadoop-trunk-Commit/10356/ ) YARN-5373 . NPE listing wildcard directory in containerLaunch. (Daniel (kasha: rev cde3a00526c562a500308232e2b93498d22c90d7) (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/DockerContainerExecutor.java (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/linux/privileged/PrivilegedOperation.java (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/container-executor.c (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/container-executor.h (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/LinuxContainerExecutor.java (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/ContainerLaunch.java (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/java/org/apache/hadoop/yarn/server/nodemanager/ContainerExecutor.java (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/impl/main.c (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/test/java/org/apache/hadoop/yarn/server/nodemanager/containermanager/launcher/TestContainerLaunch.java (edit) hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager/src/main/native/container-executor/test/test-container-executor.c
          Hide
          kasha Karthik Kambatla added a comment -

          Thanks Daniel for fixing this, and Sangjin for your input.

          Just committed this to trunk and branch-2.

          Show
          kasha Karthik Kambatla added a comment - Thanks Daniel for fixing this, and Sangjin for your input. Just committed this to trunk and branch-2.
          Hide
          kasha Karthik Kambatla added a comment -

          The latest patch looks good. +1. Checking this in.

          Show
          kasha Karthik Kambatla added a comment - The latest patch looks good. +1. Checking this in.
          Hide
          sjlee0 Sangjin Lee added a comment -

          I agree. I think the current approach is pretty consistent with other operations in LCE. I think there is value in keeping it consistent.

          Show
          sjlee0 Sangjin Lee added a comment - I agree. I think the current approach is pretty consistent with other operations in LCE. I think there is value in keeping it consistent.
          Hide
          templedf Daniel Templeton added a comment -

          CC warning is still the same bogus complaint.

          Show
          templedf Daniel Templeton added a comment - CC warning is still the same bogus complaint.
          Hide
          hadoopqa Hadoop QA added a comment -
          -1 overall



          Vote Subsystem Runtime Comment
          0 reexec 0m 19s Docker mode activated.
          +1 @author 0m 0s The patch does not contain any @author tags.
          +1 test4tests 0m 0s The patch appears to include 2 new or modified test files.
          +1 mvninstall 7m 3s trunk passed
          +1 compile 0m 27s trunk passed
          +1 checkstyle 0m 19s trunk passed
          +1 mvnsite 0m 28s trunk passed
          +1 mvneclipse 0m 12s trunk passed
          +1 findbugs 0m 41s trunk passed
          +1 javadoc 0m 17s trunk passed
          +1 mvninstall 0m 22s the patch passed
          +1 compile 0m 24s the patch passed
          -1 cc 0m 24s hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0)
          +1 javac 0m 24s the patch passed
          +1 checkstyle 0m 15s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager: The patch generated 0 new + 207 unchanged - 2 fixed = 207 total (was 209)
          +1 mvnsite 0m 24s the patch passed
          +1 mvneclipse 0m 10s the patch passed
          +1 whitespace 0m 0s The patch has no whitespace issues.
          +1 findbugs 0m 47s the patch passed
          +1 javadoc 0m 16s the patch passed
          +1 unit 13m 34s hadoop-yarn-server-nodemanager in the patch passed.
          +1 asflicense 0m 16s The patch does not generate ASF License warnings.
          26m 58s



          Subsystem Report/Notes
          Docker Image:yetus/hadoop:9560f25
          JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12824941/YARN-5373.003.patch
          JIRA Issue YARN-5373
          Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle cc
          uname Linux 75498d4c511d 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 / 3ca4d6d
          Default Java 1.8.0_101
          findbugs v3.0.0
          cc https://builds.apache.org/job/PreCommit-YARN-Build/12852/artifact/patchprocess/diff-compile-cc-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt
          Test Results https://builds.apache.org/job/PreCommit-YARN-Build/12852/testReport/
          modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager
          Console output https://builds.apache.org/job/PreCommit-YARN-Build/12852/console
          Powered by Apache Yetus 0.3.0 http://yetus.apache.org

          This message was automatically generated.

          Show
          hadoopqa Hadoop QA added a comment - -1 overall Vote Subsystem Runtime Comment 0 reexec 0m 19s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. +1 test4tests 0m 0s The patch appears to include 2 new or modified test files. +1 mvninstall 7m 3s trunk passed +1 compile 0m 27s trunk passed +1 checkstyle 0m 19s trunk passed +1 mvnsite 0m 28s trunk passed +1 mvneclipse 0m 12s trunk passed +1 findbugs 0m 41s trunk passed +1 javadoc 0m 17s trunk passed +1 mvninstall 0m 22s the patch passed +1 compile 0m 24s the patch passed -1 cc 0m 24s hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager generated 1 new + 0 unchanged - 0 fixed = 1 total (was 0) +1 javac 0m 24s the patch passed +1 checkstyle 0m 15s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager: The patch generated 0 new + 207 unchanged - 2 fixed = 207 total (was 209) +1 mvnsite 0m 24s the patch passed +1 mvneclipse 0m 10s the patch passed +1 whitespace 0m 0s The patch has no whitespace issues. +1 findbugs 0m 47s the patch passed +1 javadoc 0m 16s the patch passed +1 unit 13m 34s hadoop-yarn-server-nodemanager in the patch passed. +1 asflicense 0m 16s The patch does not generate ASF License warnings. 26m 58s Subsystem Report/Notes Docker Image:yetus/hadoop:9560f25 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12824941/YARN-5373.003.patch JIRA Issue YARN-5373 Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle cc uname Linux 75498d4c511d 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 / 3ca4d6d Default Java 1.8.0_101 findbugs v3.0.0 cc https://builds.apache.org/job/PreCommit-YARN-Build/12852/artifact/patchprocess/diff-compile-cc-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt Test Results https://builds.apache.org/job/PreCommit-YARN-Build/12852/testReport/ modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager Console output https://builds.apache.org/job/PreCommit-YARN-Build/12852/console Powered by Apache Yetus 0.3.0 http://yetus.apache.org This message was automatically generated.
          Hide
          templedf Daniel Templeton added a comment -

          Here's a patch addressing Karthik Kambatla's other comments.

          Show
          templedf Daniel Templeton added a comment - Here's a patch addressing Karthik Kambatla 's other comments.
          Hide
          templedf Daniel Templeton added a comment -

          NIO.2 has some spotty support for setting facls, but it's not supported on ext4, and maybe not ext3 either. In order to implement an facl, we'll have to punch out to native code. The code would land in the RawLocalFileSystem in common via JNI. I can see where setting the facl is a cleaner solution at a high level, but JNI is icky by definition. In the LCE we already have a mechanism defined to punch out to native code without the risk of JNI, so I can't say that the facl solution is clearly better. Thoughts, Sangjin Lee?

          Show
          templedf Daniel Templeton added a comment - NIO.2 has some spotty support for setting facls, but it's not supported on ext4, and maybe not ext3 either. In order to implement an facl, we'll have to punch out to native code. The code would land in the RawLocalFileSystem in common via JNI. I can see where setting the facl is a cleaner solution at a high level, but JNI is icky by definition. In the LCE we already have a mechanism defined to punch out to native code without the risk of JNI, so I can't say that the facl solution is clearly better. Thoughts, Sangjin Lee ?
          Hide
          kasha Karthik Kambatla added a comment -

          Thanks for picking this up, Daniel Templeton.

          Quick high-level question. After chowning to the user who would run the container, can we setfacl to give access to user "yarn" as well?

          Comments on the patch itself:

          1. container-executor.c
            1. The log messages for failure to open/read directory are missing the word NOT?
            2. After readdir, I see the patch resets errno. What happens if the first call to readdir fails? Don't we lose the errno and fail to log and return -1? May be reset before the readdir call? Skip resetting altogether?
            3. For the (dir == NULL), can we invert the operands to (NULL == dir)?
          2. test-container-executor.c - typo: s/existant/existent

          On the tests, do we need tests with linux-container-executor.nonsecure-mode.limit-users turned on/off?

          Show
          kasha Karthik Kambatla added a comment - Thanks for picking this up, Daniel Templeton . Quick high-level question. After chowning to the user who would run the container, can we setfacl to give access to user "yarn" as well? Comments on the patch itself: container-executor.c The log messages for failure to open/read directory are missing the word NOT? After readdir, I see the patch resets errno. What happens if the first call to readdir fails? Don't we lose the errno and fail to log and return -1? May be reset before the readdir call? Skip resetting altogether? For the (dir == NULL), can we invert the operands to (NULL == dir)? test-container-executor.c - typo: s/existant/existent On the tests, do we need tests with linux-container-executor.nonsecure-mode.limit-users turned on/off?
          Hide
          templedf Daniel Templeton added a comment -

          The compile warning is intentional. It's the test code testing a bad case.

          The unit test failure appears unrelated.

          Show
          templedf Daniel Templeton added a comment - The compile warning is intentional. It's the test code testing a bad case. The unit test failure appears unrelated.
          Hide
          hadoopqa Hadoop QA added a comment -
          -1 overall



          Vote Subsystem Runtime Comment
          0 reexec 0m 14s Docker mode activated.
          +1 @author 0m 0s The patch does not contain any @author tags.
          +1 test4tests 0m 0s The patch appears to include 2 new or modified test files.
          +1 mvninstall 7m 58s trunk passed
          +1 compile 0m 26s trunk passed
          +1 checkstyle 0m 18s trunk passed
          +1 mvnsite 0m 28s trunk passed
          +1 mvneclipse 0m 13s trunk passed
          +1 findbugs 0m 43s trunk passed
          +1 javadoc 0m 17s trunk passed
          +1 mvninstall 0m 23s the patch passed
          +1 compile 0m 25s the patch passed
          -1 cc 0m 25s hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager generated 1 new + 3 unchanged - 0 fixed = 4 total (was 3)
          +1 javac 0m 25s the patch passed
          +1 checkstyle 0m 16s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager: The patch generated 0 new + 204 unchanged - 2 fixed = 204 total (was 206)
          +1 mvnsite 0m 25s the patch passed
          +1 mvneclipse 0m 10s the patch passed
          +1 whitespace 0m 0s The patch has no whitespace issues.
          +1 findbugs 0m 46s the patch passed
          +1 javadoc 0m 15s the patch passed
          -1 unit 13m 20s hadoop-yarn-server-nodemanager in the patch failed.
          +1 asflicense 0m 15s The patch does not generate ASF License warnings.
          27m 28s



          Reason Tests
          Failed junit tests hadoop.yarn.server.nodemanager.TestDirectoryCollection



          Subsystem Report/Notes
          Docker Image:yetus/hadoop:9560f25
          JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12819667/YARN-5373.002.patch
          JIRA Issue YARN-5373
          Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle cc
          uname Linux 6dcf14ef6e4b 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 / 703fdf8
          Default Java 1.8.0_101
          findbugs v3.0.0
          cc https://builds.apache.org/job/PreCommit-YARN-Build/12489/artifact/patchprocess/diff-compile-cc-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt
          unit https://builds.apache.org/job/PreCommit-YARN-Build/12489/artifact/patchprocess/patch-unit-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt
          unit test logs https://builds.apache.org/job/PreCommit-YARN-Build/12489/artifact/patchprocess/patch-unit-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt
          Test Results https://builds.apache.org/job/PreCommit-YARN-Build/12489/testReport/
          modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager
          Console output https://builds.apache.org/job/PreCommit-YARN-Build/12489/console
          Powered by Apache Yetus 0.3.0 http://yetus.apache.org

          This message was automatically generated.

          Show
          hadoopqa Hadoop QA added a comment - -1 overall Vote Subsystem Runtime Comment 0 reexec 0m 14s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. +1 test4tests 0m 0s The patch appears to include 2 new or modified test files. +1 mvninstall 7m 58s trunk passed +1 compile 0m 26s trunk passed +1 checkstyle 0m 18s trunk passed +1 mvnsite 0m 28s trunk passed +1 mvneclipse 0m 13s trunk passed +1 findbugs 0m 43s trunk passed +1 javadoc 0m 17s trunk passed +1 mvninstall 0m 23s the patch passed +1 compile 0m 25s the patch passed -1 cc 0m 25s hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager generated 1 new + 3 unchanged - 0 fixed = 4 total (was 3) +1 javac 0m 25s the patch passed +1 checkstyle 0m 16s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager: The patch generated 0 new + 204 unchanged - 2 fixed = 204 total (was 206) +1 mvnsite 0m 25s the patch passed +1 mvneclipse 0m 10s the patch passed +1 whitespace 0m 0s The patch has no whitespace issues. +1 findbugs 0m 46s the patch passed +1 javadoc 0m 15s the patch passed -1 unit 13m 20s hadoop-yarn-server-nodemanager in the patch failed. +1 asflicense 0m 15s The patch does not generate ASF License warnings. 27m 28s Reason Tests Failed junit tests hadoop.yarn.server.nodemanager.TestDirectoryCollection Subsystem Report/Notes Docker Image:yetus/hadoop:9560f25 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12819667/YARN-5373.002.patch JIRA Issue YARN-5373 Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle cc uname Linux 6dcf14ef6e4b 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 / 703fdf8 Default Java 1.8.0_101 findbugs v3.0.0 cc https://builds.apache.org/job/PreCommit-YARN-Build/12489/artifact/patchprocess/diff-compile-cc-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt unit https://builds.apache.org/job/PreCommit-YARN-Build/12489/artifact/patchprocess/patch-unit-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt unit test logs https://builds.apache.org/job/PreCommit-YARN-Build/12489/artifact/patchprocess/patch-unit-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt Test Results https://builds.apache.org/job/PreCommit-YARN-Build/12489/testReport/ modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager Console output https://builds.apache.org/job/PreCommit-YARN-Build/12489/console Powered by Apache Yetus 0.3.0 http://yetus.apache.org This message was automatically generated.
          Hide
          templedf Daniel Templeton added a comment -

          This patch should resolve the compile error and the checkstyle issues.

          Show
          templedf Daniel Templeton added a comment - This patch should resolve the compile error and the checkstyle issues.
          Hide
          hadoopqa Hadoop QA added a comment -
          -1 overall



          Vote Subsystem Runtime Comment
          0 reexec 0m 22s Docker mode activated.
          +1 @author 0m 0s The patch does not contain any @author tags.
          +1 test4tests 0m 0s The patch appears to include 2 new or modified test files.
          +1 mvninstall 8m 27s trunk passed
          +1 compile 0m 29s trunk passed
          +1 checkstyle 0m 21s trunk passed
          +1 mvnsite 0m 37s trunk passed
          +1 mvneclipse 0m 13s trunk passed
          +1 findbugs 0m 44s trunk passed
          +1 javadoc 0m 17s trunk passed
          +1 mvninstall 0m 26s the patch passed
          -1 compile 0m 19s hadoop-yarn-server-nodemanager in the patch failed.
          -1 cc 0m 19s hadoop-yarn-server-nodemanager in the patch failed.
          -1 javac 0m 19s hadoop-yarn-server-nodemanager in the patch failed.
          -1 checkstyle 0m 17s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager: The patch generated 4 new + 206 unchanged - 2 fixed = 210 total (was 208)
          +1 mvnsite 0m 31s the patch passed
          +1 mvneclipse 0m 12s the patch passed
          +1 whitespace 0m 0s The patch has no whitespace issues.
          +1 findbugs 0m 54s the patch passed
          +1 javadoc 0m 16s the patch passed
          -1 unit 0m 18s hadoop-yarn-server-nodemanager in the patch failed.
          +1 asflicense 0m 15s The patch does not generate ASF License warnings.
          15m 40s



          Subsystem Report/Notes
          Docker Image:yetus/hadoop:9560f25
          JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12819519/YARN-5373.001.patch
          JIRA Issue YARN-5373
          Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle cc
          uname Linux ba84ec569e74 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 / 132deb4
          Default Java 1.8.0_91
          findbugs v3.0.0
          compile https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/patch-compile-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt
          cc https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/patch-compile-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt
          javac https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/patch-compile-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt
          checkstyle https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/diff-checkstyle-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt
          unit https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/patch-unit-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt
          Test Results https://builds.apache.org/job/PreCommit-YARN-Build/12454/testReport/
          modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager
          Console output https://builds.apache.org/job/PreCommit-YARN-Build/12454/console
          Powered by Apache Yetus 0.3.0 http://yetus.apache.org

          This message was automatically generated.

          Show
          hadoopqa Hadoop QA added a comment - -1 overall Vote Subsystem Runtime Comment 0 reexec 0m 22s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. +1 test4tests 0m 0s The patch appears to include 2 new or modified test files. +1 mvninstall 8m 27s trunk passed +1 compile 0m 29s trunk passed +1 checkstyle 0m 21s trunk passed +1 mvnsite 0m 37s trunk passed +1 mvneclipse 0m 13s trunk passed +1 findbugs 0m 44s trunk passed +1 javadoc 0m 17s trunk passed +1 mvninstall 0m 26s the patch passed -1 compile 0m 19s hadoop-yarn-server-nodemanager in the patch failed. -1 cc 0m 19s hadoop-yarn-server-nodemanager in the patch failed. -1 javac 0m 19s hadoop-yarn-server-nodemanager in the patch failed. -1 checkstyle 0m 17s hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager: The patch generated 4 new + 206 unchanged - 2 fixed = 210 total (was 208) +1 mvnsite 0m 31s the patch passed +1 mvneclipse 0m 12s the patch passed +1 whitespace 0m 0s The patch has no whitespace issues. +1 findbugs 0m 54s the patch passed +1 javadoc 0m 16s the patch passed -1 unit 0m 18s hadoop-yarn-server-nodemanager in the patch failed. +1 asflicense 0m 15s The patch does not generate ASF License warnings. 15m 40s Subsystem Report/Notes Docker Image:yetus/hadoop:9560f25 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12819519/YARN-5373.001.patch JIRA Issue YARN-5373 Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle cc uname Linux ba84ec569e74 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 / 132deb4 Default Java 1.8.0_91 findbugs v3.0.0 compile https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/patch-compile-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt cc https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/patch-compile-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt javac https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/patch-compile-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt checkstyle https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/diff-checkstyle-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt unit https://builds.apache.org/job/PreCommit-YARN-Build/12454/artifact/patchprocess/patch-unit-hadoop-yarn-project_hadoop-yarn_hadoop-yarn-server_hadoop-yarn-server-nodemanager.txt Test Results https://builds.apache.org/job/PreCommit-YARN-Build/12454/testReport/ modules C: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager U: hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-nodemanager Console output https://builds.apache.org/job/PreCommit-YARN-Build/12454/console Powered by Apache Yetus 0.3.0 http://yetus.apache.org This message was automatically generated.
          Hide
          templedf Daniel Templeton added a comment -

          This issue is worse than I first thought. It appears in any secure mode cluster, not just in secure (Kerberized) clusters. I missed it initially because I was naively running as my cluster as root. There are work-arounds, e.g. set the property to disable MAPREDUCE-6719.

          Show
          templedf Daniel Templeton added a comment - This issue is worse than I first thought. It appears in any secure mode cluster, not just in secure (Kerberized) clusters. I missed it initially because I was naively running as my cluster as root. There are work-arounds, e.g. set the property to disable MAPREDUCE-6719 .
          Hide
          templedf Daniel Templeton added a comment -

          Here's a patch that fixes the issue. I'd especially like someone to look closely at my C code. It's been a decade since I last wrote any serious C.

          Show
          templedf Daniel Templeton added a comment - Here's a patch that fixes the issue. I'd especially like someone to look closely at my C code. It's been a decade since I last wrote any serious C.
          Hide
          templedf Daniel Templeton added a comment -

          I have a fix working that uses a PrivilegedOperation instead of modifying the script. Haibo Chen, you can close the Windows JIRA. After I get it cleaned up a little, I'll post it for review.

          Show
          templedf Daniel Templeton added a comment - I have a fix working that uses a PrivilegedOperation instead of modifying the script. Haibo Chen , you can close the Windows JIRA. After I get it cleaned up a little, I'll post it for review.
          Hide
          haibochen Haibo Chen added a comment -

          Created a separate jira to fix this issue for Windows, as I don't have an access to a window OS.

          Show
          haibochen Haibo Chen added a comment - Created a separate jira to fix this issue for Windows, as I don't have an access to a window OS.
          Hide
          haibochen Haibo Chen added a comment -

          As per offline discussion with Daniel, the cause is that in a secure cluster, the node manager that executes container launch code runs as a user that has no permission to read/execute the local wildcard directory that is downloaded as a resource by the remote user. Thus, directory.listFiles() return null.

          Show
          haibochen Haibo Chen added a comment - As per offline discussion with Daniel, the cause is that in a secure cluster, the node manager that executes container launch code runs as a user that has no permission to read/execute the local wildcard directory that is downloaded as a resource by the remote user. Thus, directory.listFiles() return null.
          Hide
          templedf Daniel Templeton added a comment -

          It looks like the issue only appears when running with a secure cluster.

          Show
          templedf Daniel Templeton added a comment - It looks like the issue only appears when running with a secure cluster.

            People

            • Assignee:
              templedf Daniel Templeton
              Reporter:
              haibochen Haibo Chen
            • Votes:
              0 Vote for this issue
              Watchers:
              8 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved:

                Development