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

Xianyin Xin commented on YARN-3885:
-----------------------------------

Hi Ajith, CHILDRENPREEMPTABLE  may be over counted. Suppose parent queue root 
has extra 50 containers, and child queue root.A has 20 preemptable, and root.B 
40 preemptable, than root has 60 preemptable by calculation. This should be 
limited to 50.

An alternative solution is we use PREEMTABLE of non-leaf queue record the sum 
of sub-queue's PREEMPTABLEs(i.e. PREEMPTABL=min(CHILDRENPREEMPTABLE, extra)) 
because it is non zero only for leaf queue, thus we can omit 
CHILDRENPREEMPTABLE in the TempQueuePerPartition. It's strange that all the 
non-leaf queues has 0 PREEMPTABLE.

Def PREEMPTABLE:
    for leaf queues, the preemptable resources
    for non-leaf queues, min(sum of children's PREEMOTABLEs, extra) -----(this 
is what CHILDRENPREEMPTABLE does in the patch)

Just a suggestion.

> ProportionalCapacityPreemptionPolicy doesn't preempt if queue is more than 2 
> level
> ----------------------------------------------------------------------------------
>
>                 Key: YARN-3885
>                 URL: https://issues.apache.org/jira/browse/YARN-3885
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: yarn
>    Affects Versions: 2.8.0
>            Reporter: Ajith S
>            Priority: Critical
>         Attachments: YARN-3885.patch
>
>
> when preemption policy is {{ProportionalCapacityPreemptionPolicy.cloneQueues}}
> this piece of code, to calculate {{untoucable}} is wrong as it doesnt 
> consider al the children, it considers only immediate childern



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

Reply via email to