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

Omkar Vinit Joshi commented on YARN-897:
----------------------------------------

[~dedcode] Thanks for posting the patch... looked at the code.. 

bq.     // Can't use childQueues.remove() since the TreeSet might be out of 
order.
any reason for this even after this patch? if we don't see any other issues 
then why not just use childQueues.remove instead of iterating?

* reinsertQueue could be marked synchronized? thoughts? But yeah.. without that 
too it is thread safe as we are locking it at CapacitySchedulder.nodeUpdate(). 
but still it is better to mark it.

*         LOG.info("Re-sorting queues since queue got completed: " + 
childQueue.getQueuePath() + 
nit. line > 80

* at present we send the container completed event to leaf queue and then keep 
propagating it till root. why not sent the event to root grab the locks from 
root->leaf and update it? any thoughts?
                
> CapacityScheduler wrongly sorted queues
> ---------------------------------------
>
>                 Key: YARN-897
>                 URL: https://issues.apache.org/jira/browse/YARN-897
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: capacityscheduler
>            Reporter: Djellel Eddine Difallah
>         Attachments: TestBugParentQueue.java, YARN-897-1.patch
>
>
> The childQueues of a ParentQueue are stored in a TreeSet where UsedCapacity 
> defines the sort order. This ensures the queue with least UsedCapacity to 
> receive resources next. On containerAssignment we correctly update the order, 
> but we miss to do so on container completions. This corrupts the TreeSet 
> structure, and under-capacity queues might starve for resources.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to