Return-Path: X-Original-To: apmail-hadoop-yarn-issues-archive@minotaur.apache.org Delivered-To: apmail-hadoop-yarn-issues-archive@minotaur.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 6575211406 for ; Wed, 30 Jul 2014 18:10:42 +0000 (UTC) Received: (qmail 91123 invoked by uid 500); 30 Jul 2014 18:10:40 -0000 Delivered-To: apmail-hadoop-yarn-issues-archive@hadoop.apache.org Received: (qmail 91078 invoked by uid 500); 30 Jul 2014 18:10:40 -0000 Mailing-List: contact yarn-issues-help@hadoop.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: yarn-issues@hadoop.apache.org Delivered-To: mailing list yarn-issues@hadoop.apache.org Received: (qmail 90997 invoked by uid 99); 30 Jul 2014 18:10:40 -0000 Received: from arcas.apache.org (HELO arcas.apache.org) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 30 Jul 2014 18:10:40 +0000 Date: Wed, 30 Jul 2014 18:10:40 +0000 (UTC) From: "Craig Welch (JIRA)" To: yarn-issues@hadoop.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Updated] (YARN-2008) CapacityScheduler may report incorrect queueMaxCap if there is hierarchy queue structure MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 [ https://issues.apache.org/jira/browse/YARN-2008?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ] Craig Welch updated YARN-2008: ------------------------------ Attachment: YARN-2008.3.patch Added better check for invalid divisor, bounds check for absoluteMaxAvail > CapacityScheduler may report incorrect queueMaxCap if there is hierarchy queue structure > ----------------------------------------------------------------------------------------- > > Key: YARN-2008 > URL: https://issues.apache.org/jira/browse/YARN-2008 > Project: Hadoop YARN > Issue Type: Sub-task > Affects Versions: 2.3.0 > Reporter: Chen He > Assignee: Craig Welch > Attachments: YARN-2008.1.patch, YARN-2008.2.patch, YARN-2008.3.patch > > > If there are two queues, both allowed to use 100% of the actual resources in the cluster. Q1 and Q2 currently use 50% of actual cluster's resources and there is not actual space available. If we use current method to get headroom, CapacityScheduler thinks there are still available resources for users in Q1 but they have been used by Q2. > If the CapacityScheduelr has a hierarchy queue structure, it may report incorrect queueMaxCap. Here is a example > || ||rootQueue|| || > | | / | \ | > | L1ParentQueue1 | | L1ParentQueue2 | > | (allowed to use up 80% of its parent) | | (allowed to use 20% in minimum of its parent)| > | / | \ | | > | L2LeafQueue1 | L2LeafQueue2 | | > |(50% of its parent) | (50% of its parent in minimum) | | > When we calculate headroom of a user in L2LeafQueue2, current method will think L2LeafQueue2 can use 40% (80%*50%) of actual rootQueue resources. However, without checking L1ParentQueue1, we are not sure. It is possible that L1ParentQueue2 have used 40% of rootQueue resources right now. Actually, L2LeafQueue2 can only use 30% (60%*50%). -- This message was sent by Atlassian JIRA (v6.2#6252)