hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Peng Zhang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-3405) FairScheduler's preemption cannot happen between sibling in some case
Date Sat, 28 Mar 2015 03:54:53 GMT

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

Peng Zhang commented on YARN-3405:

bq. There is a possibility for the first scenario. If we have another queue queue-2 which
is queue-1's sibling and queue-2 is greater than queue-1 when compare queue-1 and queue-2,
then queue-2 will always be picked for preemption and queue-1 won't have chance to be preempted.

For this case "queue-2 is greater than queue-1 when compare queue-1 and queue-2":
I think firstly preempt from queue-2(if it is LeafQueue) or queue-2's child Queue is reasonable.
And then when preemption and scheduling cause queue-1 greater than queue-2, it should preempt
from queue-1-1 ideally. (I think this may not happen in time by checking code, and maybe cause
queue-1 is over preempted. But even if queue-1 is over preempted, during scheduling, the preempted
containers will not be all assigned to queue-1, because queue-2 itself is under fair share.
Finally it will got a balance & fair state.)

> 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-1-1        queue-1-2
> {noformat}
> 1. When queue-1-1 is active and it has been assigned with all resources.
> 2. When queue-1-2 is active, and it cause some new preemption request.
> 3. But when do preemption, it now starts from root, and found queue-1 is not over fairshare,
so no recursion preemption to queue-1-1.
> 4. Finally queue-1-2 will be waiting for resource release form queue-1-1 itself.

This message was sent by Atlassian JIRA

View raw message