[ 
https://issues.apache.org/jira/browse/YARN-3762?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14571409#comment-14571409
 ] 

Arun Suresh commented on YARN-3762:
-----------------------------------

[~kasha], Thanks for the patch

* In the {{assignContainer}} method, you are sorting the collection under a 
write lock and then assigning the container within the read lock, what happens 
if the collection is modified in between.. shouldnt we have the write lock 
encompass both operations ? I agree, It will not lead to the Exception (which 
is the point of the JIRA) but I feel it should be done for correctness.

* One other possible improvement is maybe instead of using a List and sorting 
it everytime, we could use a Sorted Bag (MultiSet) ? which keeps the list in 
sorted order ?


> FairScheduler: CME on FSParentQueue#getQueueUserAclInfo
> -------------------------------------------------------
>
>                 Key: YARN-3762
>                 URL: https://issues.apache.org/jira/browse/YARN-3762
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: fairscheduler
>    Affects Versions: 2.7.0
>            Reporter: Karthik Kambatla
>            Assignee: Karthik Kambatla
>            Priority: Critical
>         Attachments: yarn-3762-1.patch, yarn-3762-1.patch
>
>
> In our testing, we ran into the following ConcurrentModificationException:
> {noformat}
> halxg.cloudera.com:8042, nodeRackName/rackvb07, nodeNumContainers0
> 15/05/22 13:02:22 INFO distributedshell.Client: Queue info, 
> queueName=root.testyarnpool3, queueCurrentCapacity=0.0, 
> queueMaxCapacity=-1.0, queueApplicationCount=0, queueChildQueueCount=0
> 15/05/22 13:02:22 FATAL distributedshell.Client: Error running Client
> java.util.ConcurrentModificationException: 
> java.util.ConcurrentModificationException
>       at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:901)
>       at java.util.ArrayList$Itr.next(ArrayList.java:851)
>       at 
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FSParentQueue.getQueueUserAclInfo(FSParentQueue.java:155)
>       at 
> org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler.getQueueUserAclInfo(FairScheduler.java:1395)
>       at 
> org.apache.hadoop.yarn.server.resourcemanager.ClientRMService.getQueueUserAcls(ClientRMService.java:880)
> {noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to