hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ashwin Shankar (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-3176) In Fair Scheduler, child queue should inherit maxApp from its parent
Date Thu, 06 Aug 2015 21:49:05 GMT

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

Ashwin Shankar commented on YARN-3176:
--------------------------------------

bq. In this case, MaxRunningAppEnforcer could end up letting more apps running in the child
queues.
Are you sure about this ? if queueMaxAppsDefault is set to 50 and the child does not have
maxApps set, then their maxApps would be taken as 50, which is true like you said, but that
doesn't mean they can run 50. They wouldn't be able to run more than 25, which is their parent's
maxApps, since every application submitted (FS.addApplicationAttempt()) has to go through
MaxRunningAppEnforcer.canAppBeRunnable(), which would recursively look and see if the new
app would violate maxApp at any of its queue's ancestors, which means the child would be limited
to 25 apps, not 50, no ?

{code:java}
    // Check queue and all parent queues
    while (queue != null) {
      int queueMaxApps = allocConf.getQueueMaxApps(queue.getName());
      if (queue.getNumRunnableApps() >= queueMaxApps) {
        return false;
      }
      queue = queue.getParent();
    }
{code}

Yes I agree that we do need something to fix the UI, but I don't believe we are fixing the
an incorrect behavior of "maxapps" logic.

> In Fair Scheduler, child queue should inherit maxApp from its parent
> --------------------------------------------------------------------
>
>                 Key: YARN-3176
>                 URL: https://issues.apache.org/jira/browse/YARN-3176
>             Project: Hadoop YARN
>          Issue Type: Bug
>            Reporter: Siqi Li
>            Assignee: Siqi Li
>         Attachments: YARN-3176.v1.patch, YARN-3176.v2.patch
>
>
> if the child queue does not have a maxRunningApp limit, it will use the queueMaxAppsDefault.
This behavior is not quite right, since queueMaxAppsDefault is normally a small number, whereas
some parent queues do have maxRunningApp set to be more than the default



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

Mime
View raw message