[
https://issues.apache.org/jira/browse/MAPREDUCE-3683?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13192206#comment-13192206
]
Nathan Roberts commented on MAPREDUCE-3683:
-------------------------------------------
Sorry if I'm just being dense here..
bq. 100% is all of parent's capacitY, UNDEFINED is effectively unlimited
(infinity i.e. Float.MAX_VALUE).
I don't see how that lines up with previous comments:
{quote}
Tom: If the leaf queues maximum-capacity is not configured, then it can use
100% of the cluster.
Arun: That isn't true. It just means there is no max-cap for the child and it
can use as much capacity as the parent queue gets, which might be capped by the
parent/grandparent capacity/max-capacity and so on. This seems like the correct
behaviour. Right?
{quote}
I think it works the way this last exchange describes it. Given the following
queue configuration (cap,maxcap):
a (25,25)
b (75,75)
a.a1 (50,UNDEFINED)
a.a1 gets 25% of the cluster and nothing more.
I believe it works this way because the resources in the 'a' subtree are
exhausted when it's trying to assign containers to that
subtree(ParentQueue.assignToQueue).
I actually think it's correct that a leaf queue should not be able to break out
of the limits set by its ancestors. However, if this is the case then UNDEFINED
is the same as 100%.
> Capacity scheduler LeafQueues maximum capacity calculation issues
> -----------------------------------------------------------------
>
> Key: MAPREDUCE-3683
> URL: https://issues.apache.org/jira/browse/MAPREDUCE-3683
> Project: Hadoop Map/Reduce
> Issue Type: Bug
> Components: mrv2
> Affects Versions: 0.23.0
> Reporter: Thomas Graves
> Assignee: Arun C Murthy
> Priority: Blocker
> Attachments: MAPREDUCE-3683.patch, MAPREDUCE-3683.patch
>
>
> In the Capacity scheduler if you configure the queues to be hierarchical
> where you have root -> parent queue -> leaf queue, the leaf queue doesn't
> take into account its parents maximum capacity when calculate its own maximum
> capacity, instead it seems to use the parents capacity. Looking at the code
> its using the parents absoluteCapacity and I think it should be using the
> parents absoluteMaximumCapacity.
> It also seems to only use the parents capacity in the leaf queues max
> capacity calculation when the leaf queue has a max capacity configured. If
> the leaf queues maximum-capacity is not configured, then it can use 100% of
> the cluster.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira