Hadoop YARN
  1. Hadoop YARN
  2. YARN-32

TestApplicationTokens fails intermintently on jdk7

    Details

    • Type: Bug Bug
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.23.3
    • Fix Version/s: 2.0.3-alpha, 0.23.5
    • Component/s: None
    • Labels:

      Description

      TestApplicationsTokens fails intermintently on jdk7.

      1. YARN-32-20121017.txt
        4 kB
        Vinod Kumar Vavilapalli
      2. YARN32.patch
        2 kB
        Robert Parker

        Activity

        Hide
        Thomas Graves added a comment -

        ests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 4.578 sec <<< FAILURE!testTokenExpiry(org.apache.hadoop.yarn.server.resourcemanager.security.TestApplicationTokens) Time elapsed: 1.67 sec <<< ERROR!java.lang.NullPointerException at org.apache.hadoop.yarn.server.resourcemanager.security.TestApplicationTokens.testTokenExpiry(TestApplicationTokens.java:132)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:601)
        at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41)
        at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20)
        at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71)
        at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)

        Show
        Thomas Graves added a comment - ests run: 2, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 4.578 sec <<< FAILURE!testTokenExpiry(org.apache.hadoop.yarn.server.resourcemanager.security.TestApplicationTokens) Time elapsed: 1.67 sec <<< ERROR!java.lang.NullPointerException at org.apache.hadoop.yarn.server.resourcemanager.security.TestApplicationTokens.testTokenExpiry(TestApplicationTokens.java:132) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:44) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:15) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:41) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:20) at org.junit.runners.BlockJUnit4ClassRunner.runNotIgnored(BlockJUnit4ClassRunner.java:79) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:71) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:49)
        Hide
        Robert Parker added a comment -

        Shortened the max idle time to remove lingering connection threads.

        Show
        Robert Parker added a comment - Shortened the max idle time to remove lingering connection threads.
        Hide
        Vinod Kumar Vavilapalli added a comment -

        Robert/Thomas, can you comment on why the test was failing in the first place and what the fix is supposed to do? Tx.

        Show
        Vinod Kumar Vavilapalli added a comment - Robert/Thomas, can you comment on why the test was failing in the first place and what the fix is supposed to do? Tx.
        Hide
        Robert Parker added a comment -

        Vinod I could reproduce this issue on jdk6 when I reversed the order of the tests. The default ipc.client.connection.maxidletime is 10 seconds' so the connections hang around after shutdown and get used by the next test.

        Show
        Robert Parker added a comment - Vinod I could reproduce this issue on jdk6 when I reversed the order of the tests. The default ipc.client.connection.maxidletime is 10 seconds' so the connections hang around after shutdown and get used by the next test.
        Hide
        Vinod Kumar Vavilapalli added a comment -

        Okay, instead of depending on the maxidletime, how about closing the client explicitly in each test?

          rpc.stopProxy(rmClient, conf)
        

        You can do that in the finally block of each test.

        Show
        Vinod Kumar Vavilapalli added a comment - Okay, instead of depending on the maxidletime, how about closing the client explicitly in each test? rpc.stopProxy(rmClient, conf) You can do that in the finally block of each test.
        Hide
        Robert Parker added a comment -

        Both tests explicitly stop the proxy currently. From my investigation, the current implementation does not kill the IPC threads until the max idle time has expired.

        Show
        Robert Parker added a comment - Both tests explicitly stop the proxy currently. From my investigation, the current implementation does not kill the IPC threads until the max idle time has expired.
        Hide
        Vinod Kumar Vavilapalli added a comment -

        Does this patch work for you?

        I generally resist putting in test-delays / hard-coded sleeps.

        Show
        Vinod Kumar Vavilapalli added a comment - Does this patch work for you? I generally resist putting in test-delays / hard-coded sleeps.
        Hide
        Robert Parker added a comment -

        Vinod, Thanks for the patch. It is much cleaner and the tests pass for JDK6 and JDK7.

        Show
        Robert Parker added a comment - Vinod, Thanks for the patch. It is much cleaner and the tests pass for JDK6 and JDK7.
        Hide
        Vinod Kumar Vavilapalli added a comment -

        Thanks for the confirmation, Robert.

        Kicking jenkins.

        Show
        Vinod Kumar Vavilapalli added a comment - Thanks for the confirmation, Robert. Kicking jenkins.
        Hide
        Hadoop QA added a comment -

        +1 overall. Here are the results of testing the latest attachment
        http://issues.apache.org/jira/secure/attachment/12549559/YARN-32-20121017.txt
        against trunk revision .

        +1 @author. The patch does not contain any @author tags.

        +1 tests included. The patch appears to include 1 new or modified test files.

        +1 javac. The applied patch does not increase the total number of javac compiler warnings.

        +1 javadoc. The javadoc tool did not generate any warning messages.

        +1 eclipse:eclipse. The patch built with eclipse:eclipse.

        +1 findbugs. The patch does not introduce any new Findbugs (version 1.3.9) warnings.

        +1 release audit. The applied patch does not increase the total number of release audit warnings.

        +1 core tests. The patch passed unit tests in hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager.

        +1 contrib tests. The patch passed contrib unit tests.

        Test results: https://builds.apache.org/job/PreCommit-YARN-Build/98//testReport/
        Console output: https://builds.apache.org/job/PreCommit-YARN-Build/98//console

        This message is automatically generated.

        Show
        Hadoop QA added a comment - +1 overall . Here are the results of testing the latest attachment http://issues.apache.org/jira/secure/attachment/12549559/YARN-32-20121017.txt against trunk revision . +1 @author . The patch does not contain any @author tags. +1 tests included . The patch appears to include 1 new or modified test files. +1 javac . The applied patch does not increase the total number of javac compiler warnings. +1 javadoc . The javadoc tool did not generate any warning messages. +1 eclipse:eclipse . The patch built with eclipse:eclipse. +1 findbugs . The patch does not introduce any new Findbugs (version 1.3.9) warnings. +1 release audit . The applied patch does not increase the total number of release audit warnings. +1 core tests . The patch passed unit tests in hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager. +1 contrib tests . The patch passed contrib unit tests. Test results: https://builds.apache.org/job/PreCommit-YARN-Build/98//testReport/ Console output: https://builds.apache.org/job/PreCommit-YARN-Build/98//console This message is automatically generated.
        Hide
        Vinod Kumar Vavilapalli added a comment -

        I just committed this to trunk, branch-2 and branch-0.23.

        Thanks for the analysis, Robert!

        Show
        Vinod Kumar Vavilapalli added a comment - I just committed this to trunk, branch-2 and branch-0.23. Thanks for the analysis, Robert!
        Hide
        Hudson added a comment -

        Integrated in Hadoop-trunk-Commit #2885 (See https://builds.apache.org/job/Hadoop-trunk-Commit/2885/)
        YARN-32. Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapalli. (Revision 1399795)

        Result = SUCCESS
        vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399795
        Files :

        • /hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt
        • /hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java
        Show
        Hudson added a comment - Integrated in Hadoop-trunk-Commit #2885 (See https://builds.apache.org/job/Hadoop-trunk-Commit/2885/ ) YARN-32 . Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapalli. (Revision 1399795) Result = SUCCESS vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399795 Files : /hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt /hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java
        Hide
        Hudson added a comment -

        Integrated in Hadoop-Yarn-trunk #8 (See https://builds.apache.org/job/Hadoop-Yarn-trunk/8/)
        YARN-32. Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapalli. (Revision 1399795)

        Result = FAILURE
        vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399795
        Files :

        • /hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt
        • /hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java
        Show
        Hudson added a comment - Integrated in Hadoop-Yarn-trunk #8 (See https://builds.apache.org/job/Hadoop-Yarn-trunk/8/ ) YARN-32 . Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapalli. (Revision 1399795) Result = FAILURE vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399795 Files : /hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt /hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java
        Hide
        Hudson added a comment -

        Integrated in Hadoop-Hdfs-0.23-Build #409 (See https://builds.apache.org/job/Hadoop-Hdfs-0.23-Build/409/)
        YARN-32. Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapali.
        svn merge --ignore-ancestry -c 1399795 ../../trunk/ (Revision 1399797)

        Result = SUCCESS
        vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399797
        Files :

        • /hadoop/common/branches/branch-0.23/hadoop-yarn-project/CHANGES.txt
        • /hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java
        Show
        Hudson added a comment - Integrated in Hadoop-Hdfs-0.23-Build #409 (See https://builds.apache.org/job/Hadoop-Hdfs-0.23-Build/409/ ) YARN-32 . Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapali. svn merge --ignore-ancestry -c 1399795 ../../trunk/ (Revision 1399797) Result = SUCCESS vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399797 Files : /hadoop/common/branches/branch-0.23/hadoop-yarn-project/CHANGES.txt /hadoop/common/branches/branch-0.23/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java
        Hide
        Hudson added a comment -

        Integrated in Hadoop-Hdfs-trunk #1200 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk/1200/)
        YARN-32. Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapalli. (Revision 1399795)

        Result = SUCCESS
        vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399795
        Files :

        • /hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt
        • /hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java
        Show
        Hudson added a comment - Integrated in Hadoop-Hdfs-trunk #1200 (See https://builds.apache.org/job/Hadoop-Hdfs-trunk/1200/ ) YARN-32 . Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapalli. (Revision 1399795) Result = SUCCESS vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399795 Files : /hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt /hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java
        Hide
        Hudson added a comment -

        Integrated in Hadoop-Mapreduce-trunk #1230 (See https://builds.apache.org/job/Hadoop-Mapreduce-trunk/1230/)
        YARN-32. Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapalli. (Revision 1399795)

        Result = SUCCESS
        vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399795
        Files :

        • /hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt
        • /hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java
        Show
        Hudson added a comment - Integrated in Hadoop-Mapreduce-trunk #1230 (See https://builds.apache.org/job/Hadoop-Mapreduce-trunk/1230/ ) YARN-32 . Fix TestApplicationTokens to not depend on test order and thus pass on JDK7. Contributed by Vinod Kumar Vavilapalli. (Revision 1399795) Result = SUCCESS vinodkv : http://svn.apache.org/viewcvs.cgi/?root=Apache-SVN&view=rev&rev=1399795 Files : /hadoop/common/trunk/hadoop-yarn-project/CHANGES.txt /hadoop/common/trunk/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/security/TestApplicationTokens.java

          People

          • Assignee:
            Vinod Kumar Vavilapalli
            Reporter:
            Thomas Graves
          • Votes:
            0 Vote for this issue
            Watchers:
            7 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development