[ 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