[
https://issues.apache.org/jira/browse/YARN-2607?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14202457#comment-14202457
]
Wangda Tan commented on YARN-2607:
----------------------------------
Currently TestDistributedShell do following steps in setup of each tests
1) Create YarnConfiguration
2) Create MiniYarnCluster by the YarnConfiguration
3) Add label to nodes/queues (also, it will set fields in YarnConfiguration)
4) *Serialize the config to yarn-site.xml*
So when we run multiple tests of TestDistributedShell without "mvn clean", the
latter tests will load the old tests's yarn-site.xml, which contains labels on
queue, and at that time, labels not added to nodes/queues yet. So the test will
fail.
There's a simply fix we can do is,
Exchange sequence of 3)/4), it will first serialize config without node label
settings to yarn-site.xml, so next time we can avoid load a YarnConfiguration
with labels. And this is safe because DistributedShell program doesn't need
labels-related fields.
Wangda
> TestDistributedShell fails in trunk
> -----------------------------------
>
> Key: YARN-2607
> URL: https://issues.apache.org/jira/browse/YARN-2607
> Project: Hadoop YARN
> Issue Type: Test
> Reporter: Ted Yu
> Assignee: Wangda Tan
>
> From https://builds.apache.org/job/Hadoop-Yarn-trunk/691/console :
> {code}
> testDSRestartWithPreviousRunningContainers(org.apache.hadoop.yarn.applications.distributedshell.TestDistributedShell)
> Time elapsed: 35.641 sec <<< FAILURE!
> java.lang.AssertionError: null
> at org.junit.Assert.fail(Assert.java:86)
> at org.junit.Assert.assertTrue(Assert.java:41)
> at org.junit.Assert.assertTrue(Assert.java:52)
> at
> org.apache.hadoop.yarn.applications.distributedshell.TestDistributedShell.testDSRestartWithPreviousRunningContainers(TestDistributedShell.java:308)
> {code}
> On Linux, I got the following locally:
> {code}
> testDSAttemptFailuresValidityIntervalFailed(org.apache.hadoop.yarn.applications.distributedshell.TestDistributedShell)
> Time elapsed: 64.715 sec <<< FAILURE!
> java.lang.AssertionError: null
> at org.junit.Assert.fail(Assert.java:86)
> at org.junit.Assert.assertTrue(Assert.java:41)
> at org.junit.Assert.assertFalse(Assert.java:64)
> at org.junit.Assert.assertFalse(Assert.java:74)
> at
> org.apache.hadoop.yarn.applications.distributedshell.TestDistributedShell.testDSAttemptFailuresValidityIntervalFailed(TestDistributedShell.java:384)
> testDSAttemptFailuresValidityIntervalSucess(org.apache.hadoop.yarn.applications.distributedshell.TestDistributedShell)
> Time elapsed: 115.842 sec <<< ERROR!
> java.lang.Exception: test timed out after 90000 milliseconds
> at java.lang.Thread.sleep(Native Method)
> at
> org.apache.hadoop.yarn.applications.distributedshell.Client.monitorApplication(Client.java:680)
> at
> org.apache.hadoop.yarn.applications.distributedshell.Client.run(Client.java:661)
> at
> org.apache.hadoop.yarn.applications.distributedshell.TestDistributedShell.testDSAttemptFailuresValidityIntervalSucess(TestDistributedShell.java:342)
> testDSRestartWithPreviousRunningContainers(org.apache.hadoop.yarn.applications.distributedshell.TestDistributedShell)
> Time elapsed: 35.633 sec <<< FAILURE!
> java.lang.AssertionError: null
> at org.junit.Assert.fail(Assert.java:86)
> at org.junit.Assert.assertTrue(Assert.java:41)
> at org.junit.Assert.assertTrue(Assert.java:52)
> at
> org.apache.hadoop.yarn.applications.distributedshell.TestDistributedShell.testDSRestartWithPreviousRunningContainers(TestDistributedShell.java:308)
> {code}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)