[ 
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

Submitting the 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, 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)

Reply via email to