[ 
https://issues.apache.org/jira/browse/YARN-3405?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Peng Zhang updated YARN-3405:
-----------------------------
    Description: 
Queue hierarchy described as below:
{noformat}
                  root
               /         \
       queue-1    queue-2       
          /      \
queue-1-1        queue-1-2
{noformat}

Assume cluster resource is 100
# queue-1-1 and queue-2 has app. Each get 50 usage and 50 fairshare. 
# When queue-1-2 is active, and it cause some new preemption request for 
fairshare 25.
# When preemption from root, it has possibility to find preemption candidate is 
queue-2. If so preemptContainerPreCheck for queue-2 return false because it's 
equal to its fairshare.
# Finally queue-1-2 will be waiting for resource release form queue-1-1 itself.

What I expect here is that queue-1-2 preempt from queue-1-1.

  was:
Queue hierarchy described as below:
{noformat}
                  root
               /         \
       queue-1    queue-2       
          /      \
queue-1-1        queue-1-2
{noformat}
Assume cluster resource is 100
# queue-1-1 and queue-2 has app. Each get 50 usage and 50 fairshare. 
# When queue-1-2 is active, and it cause some new preemption request for 
fairshare 25.
# When preemption from root, it has possibility to find preemption candidate is 
queue-2. If so 
#. Finally queue-1-2 will be waiting for resource release form queue-1-1 itself.


> FairScheduler's preemption cannot happen between sibling in some case
> ---------------------------------------------------------------------
>
>                 Key: YARN-3405
>                 URL: https://issues.apache.org/jira/browse/YARN-3405
>             Project: Hadoop YARN
>          Issue Type: Bug
>          Components: fairscheduler
>    Affects Versions: 2.7.0
>            Reporter: Peng Zhang
>            Priority: Critical
>
> Queue hierarchy described as below:
> {noformat}
>                   root
>                /         \
>        queue-1    queue-2       
>           /      \
> queue-1-1        queue-1-2
> {noformat}
> Assume cluster resource is 100
> # queue-1-1 and queue-2 has app. Each get 50 usage and 50 fairshare. 
> # When queue-1-2 is active, and it cause some new preemption request for 
> fairshare 25.
> # When preemption from root, it has possibility to find preemption candidate 
> is queue-2. If so preemptContainerPreCheck for queue-2 return false because 
> it's equal to its fairshare.
> # Finally queue-1-2 will be waiting for resource release form queue-1-1 
> itself.
> What I expect here is that queue-1-2 preempt from queue-1-1.



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

Reply via email to