[ https://issues.apache.org/jira/browse/YARN-2498?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14503692#comment-14503692 ]
Wangda Tan commented on YARN-2498: ---------------------------------- Short notes about this patch: - It indepdently computes ideal_allocation for each partition, only containers in over-satisfied partition will be preempted. - It modifies LeafQueue to record ignore_partition_exclusivity containers, when doing container preemption, it will first preempt ignore_partition_exclusivity containers. - Time complexity of new algorithm is as same as before, for individual queue, it takes at most O(number-of-containers-in-the-queue) in every preemption cycle. - The original test mocking framework doesn't support specifying partition capacity information for queues and doesn't support specify container info in individual applications, created a new test framework and added several test cases for partition preemption. (See TestProportionalCapacityPreemptionPolicyForNodePartitions). > Respect labels in preemption policy of capacity scheduler > --------------------------------------------------------- > > Key: YARN-2498 > URL: https://issues.apache.org/jira/browse/YARN-2498 > Project: Hadoop YARN > Issue Type: Sub-task > Components: resourcemanager > Reporter: Wangda Tan > Assignee: Wangda Tan > Attachments: STALED-YARN-2498.zip, YARN-2498.1.patch > > > There're 3 stages in ProportionalCapacityPreemptionPolicy, > # Recursively calculate {{ideal_assigned}} for queue. This is depends on > available resource, resource used/pending in each queue and guaranteed > capacity of each queue. > # Mark to-be preempted containers: For each over-satisfied queue, it will > mark some containers will be preempted. > # Notify scheduler about to-be preempted container. > We need respect labels in the cluster for both #1 and #2: > For #1, when there're some resource available in the cluster, we shouldn't > assign it to a queue (by increasing {{ideal_assigned}}) if the queue cannot > access such labels > For #2, when we make decision about whether we need preempt a container, we > need make sure, resource this container is *possibly* usable by a queue which > is under-satisfied and has pending resource. -- This message was sent by Atlassian JIRA (v6.3.4#6332)