[ https://issues.apache.org/jira/browse/MESOS-7402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15976051#comment-15976051 ]
Jay Guo edited comment on MESOS-7402 at 4/20/17 4:29 AM: --------------------------------------------------------- [~qianzhang] In current implementation, when we check if quota is satisfied, we check against actual *individual roles* (either virtual or leaf), but *NOT* the tree as a whole entity. And how we calculate quota for virtual node is incorrect (consider example in this JIRA, {{a/.}} should have 60, not 100). Therefore, we risk overcommitting resources to quota'd tree. To address your question, suppose we allocate 40 to {{a/b}}, which is accounted towards parent role {{a}}, however {{a/.}} is still allocated with 0, and quota'd 100, so we might allocate 100 to {{a/.}}, which violates the quota. was (Author: guoger): [~qianzhang] In current implementation, when we check if quota is satisfied, we check against actual *individual roles* (either virtual or leaf), but *NOT* the tree as a whole entity. And how we calculate quota for virtual node is incorrect (consider example in this JIRA, {{a/.}} should have 60, not 100). Therefore, we risk overcommitting resources to quota'd tree. > Allocated quota of a child role should be also charged on all ancestors of > that role > ------------------------------------------------------------------------------------ > > Key: MESOS-7402 > URL: https://issues.apache.org/jira/browse/MESOS-7402 > Project: Mesos > Issue Type: Bug > Reporter: Jay Guo > Attachments: hrole_quota_test.patch > > > Consider following case: role {{a}} is quota'd with resource 100, role > {{a/b}} is quota'd with resource 40. In current implementation, quota of > parent role is actually the aggregation of quota in whole subtree, including > itself. Therefore, the internal node of {{a}} is actually quota'd with 60, > instead of 100. In another word, allocation made for quota of {{a/b}} should > also be charged from the quota of its parent. -- This message was sent by Atlassian JIRA (v6.3.15#6346)