[
https://issues.apache.org/jira/browse/YARN-2109?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Anubhav Dhoot updated YARN-2109:
--------------------------------
Attachment: YARN-2109.001.patch
> TestRM fails some tests when some tests run with CapacityScheduler and some
> with FairScheduler
> ----------------------------------------------------------------------------------------------
>
> Key: YARN-2109
> URL: https://issues.apache.org/jira/browse/YARN-2109
> Project: Hadoop YARN
> Issue Type: Bug
> Components: scheduler
> Reporter: Anubhav Dhoot
> Assignee: Anubhav Dhoot
> Labels: test
> Attachments: YARN-2109.001.patch
>
>
> testNMTokenSentForNormalContainer requires CapacityScheduler and was fixed in
> [YARN-1846|https://issues.apache.org/jira/browse/YARN-1846] to explicitly set
> it to be CapacityScheduler. But if the default scheduler is set to
> FairScheduler then the rest of the tests that execute after this will fail
> with invalid cast exceptions when getting queuemetrics. This is based on test
> execution order as only the tests that execute after this test will fail.
> This is because the queuemetrics will be initialized by this test to
> QueueMetrics and shared by the subsequent tests.
> We can explicitly clear the metrics at the end of this test to fix this.
> For example
> java.lang.ClassCastException:
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.QueueMetrics cannot
> be cast to
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FSQueueMetrics
> at
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FSQueueMetrics.forQueue(FSQueueMetrics.java:103)
> at
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler.reinitialize(FairScheduler.java:1275)
> at
> org.apache.hadoop.yarn.server.resourcemanager.ResourceManager$RMActiveServices.serviceInit(ResourceManager.java:418)
> at
> org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
> at
> org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.createAndInitActiveServices(ResourceManager.java:808)
> at
> org.apache.hadoop.yarn.server.resourcemanager.ResourceManager.serviceInit(ResourceManager.java:230)
> at
> org.apache.hadoop.service.AbstractService.init(AbstractService.java:163)
> at
> org.apache.hadoop.yarn.server.resourcemanager.MockRM.<init>(MockRM.java:90)
> at
> org.apache.hadoop.yarn.server.resourcemanager.MockRM.<init>(MockRM.java:85)
> at
> org.apache.hadoop.yarn.server.resourcemanager.MockRM.<init>(MockRM.java:81)
> at
> org.apache.hadoop.yarn.server.resourcemanager.TestRM.testNMToken(TestRM.java:232)
--
This message was sent by Atlassian JIRA
(v6.2#6252)