[ https://issues.apache.org/jira/browse/YARN-4822?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15218708#comment-15218708 ]
Hudson commented on YARN-4822: ------------------------------ FAILURE: Integrated in Hadoop-trunk-Commit #9527 (See [https://builds.apache.org/job/Hadoop-trunk-Commit/9527/]) YARN-4822. Refactor existing Preemption Policy of CS for easier adding (jianhe: rev 60e4116bf1d00afed91010e57357fe54057e4e39) * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/capacity/FifoCandidatesSelector.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/capacity/TestProportionalCapacityPreemptionPolicyForNodePartitions.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/capacity/CapacitySchedulerPreemptionUtils.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/SchedulingEditPolicy.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/preemption/PreemptionManager.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/capacity/CapacitySchedulerPreemptionContext.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/preemption/PreemptableQueue.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/capacity/ProportionalCapacityPreemptionPolicy.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/capacity/TestProportionalCapacityPreemptionPolicy.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/capacity/TempQueuePerPartition.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/capacity/PreemptableResourceCalculator.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/capacity/PreemptionCandidatesSelector.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/CapacitySchedulerConfiguration.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/monitor/SchedulingMonitor.java * hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/test/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/TestCapacitySchedulerPreemption.java > Refactor existing Preemption Policy of CS for easier adding new approach to > select preemption candidates > -------------------------------------------------------------------------------------------------------- > > Key: YARN-4822 > URL: https://issues.apache.org/jira/browse/YARN-4822 > Project: Hadoop YARN > Issue Type: Sub-task > Reporter: Wangda Tan > Assignee: Wangda Tan > Fix For: 2.9.0 > > Attachments: YARN-4822.1.patch, YARN-4822.2.patch, YARN-4822.3.patch, > YARN-4822.4.patch, YARN-4822.5.patch, YARN-4822.6.patch, YARN-4822.7.patch > > > Currently, ProportionalCapacityPreemptionPolicy has hard coded logic to > select candidates to be preempted (based on FIFO order of > applications/containers). It's not a simple to add new candidate-selection > logics, such as preemption for large container, intra-queeu fairness/policy, > etc. > In this JIRA, I propose to do following changes: > 1) Cleanup code bases, consolidate current logic into 3 stages: > - Compute ideal sharing of queues > - Select to-be-preempt candidates > - Send preemption/kill events to scheduler > 2) Add a new interface: {{PreemptionCandidatesSelectionPolicy}} for above > "select to-be-preempt candidates" part. Move existing how to select > candidates logics to {{FifoPreemptionCandidatesSelectionPolicy}}. > 3) Allow multiple PreemptionCandidatesSelectionPolicies work together in a > chain. Preceding PreemptionCandidatesSelectionPolicy has higher priority to > select candidates, and later PreemptionCandidatesSelectionPolicy can make > decisions according to already selected candidates and pre-computed queue > ideal shares of resources. -- This message was sent by Atlassian JIRA (v6.3.4#6332)