[ https://issues.apache.org/jira/browse/YARN-596?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13951040#comment-13951040 ]
Sandy Ryza commented on YARN-596: --------------------------------- Cloning the full queue/app tree makes preemption O(apps) vs. O(log(apps)), which seems expensive to do every time we want to preempt. Could we possibly add a field to Schedulable called something like preemptedResources that gets subtracted when calculating getResourceUsage, and cleared out at the end of preemptResources? Also, minor nit: better to use "sched" than "sche" for consistency with other places in the code. > In fair scheduler, intra-application container priorities affect > inter-application preemption decisions > ------------------------------------------------------------------------------------------------------- > > Key: YARN-596 > URL: https://issues.apache.org/jira/browse/YARN-596 > Project: Hadoop YARN > Issue Type: Bug > Components: scheduler > Affects Versions: 2.0.3-alpha > Reporter: Sandy Ryza > Assignee: Sandy Ryza > Attachments: YARN-596.patch, YARN-596.patch, YARN-596.patch, > YARN-596.patch > > > In the fair scheduler, containers are chosen for preemption in the following > way: > All containers for all apps that are in queues that are over their fair share > are put in a list. > The list is sorted in order of the priority that the container was requested > in. > This means that an application can shield itself from preemption by > requesting it's containers at higher priorities, which doesn't really make > sense. > Also, an application that is not over its fair share, but that is in a queue > that is over it's fair share is just as likely to have containers preempted > as an application that is over its fair share. -- This message was sent by Atlassian JIRA (v6.2#6252)