[ https://issues.apache.org/jira/browse/YARN-10504?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17261549#comment-17261549 ]
Benjamin Teke edited comment on YARN-10504 at 1/11/21, 11:31 AM: ----------------------------------------------------------------- Sharing my latest findings on TestAbsoluteResourceWithAutoQueue failure: {{AutoCreatedLeafQueue#reinitializeFromTemplate }}was refactored, now the getting and merging the QueueCapacities happens{{ *before* }}calling the{{ ParentQueue#updateClusterResource}} (and {{LeafQueue#updateClusterResource}}). In {{LeafQueue#updateClusterResource}} the AbstractCSQueue#updateEffectiveResources is called where the effectiveMinResource of the created queue is overridden with the template's effectiveMinResources which is exactly the same the test is getting in the asserts. {code:java} void updateEffectiveResources(Resource clusterResource) { Set<String> configuredNodelabels = csContext.getConfiguration().getConfiguredNodeLabels(getQueuePath()); for (String label : configuredNodelabels) { Resource resourceByLabel = labelManager.getResourceByLabel(label, clusterResource); Resource minResource = queueResourceQuotas.getConfiguredMinResource( label); // Update effective resource (min/max) to each child queue. if (getCapacityConfigType().equals( CapacityConfigType.ABSOLUTE_RESOURCE)) { queueResourceQuotas.setEffectiveMinResource(label, getMinResourceNormalized(queuePath, ((ParentQueue) parent).getEffectiveMinRatioPerResource(), minResource)); ...{code} was (Author: bteke): Sharing my latest findings on TestAbsoluteResourceWithAutoQueue failure: {{AutoCreatedLeafQueue#reinitializeFromTemplate }}was refactored, now the getting and merging the QueueCapacities happens *before* calling the {{ParentQueue#updateClusterResource}} (and {{LeafQueue#updateClusterResource}}). In {{LeafQueue#updateClusterResource }}the {{AbstractCSQueue#updateEffectiveResources }}is called where the effectiveMinResource of the created queue is overridden with the template's effectiveMinResources which is exactly the same the test is getting in the asserts. {code:java} void updateEffectiveResources(Resource clusterResource) { Set<String> configuredNodelabels = csContext.getConfiguration().getConfiguredNodeLabels(getQueuePath()); for (String label : configuredNodelabels) { Resource resourceByLabel = labelManager.getResourceByLabel(label, clusterResource); Resource minResource = queueResourceQuotas.getConfiguredMinResource( label); // Update effective resource (min/max) to each child queue. if (getCapacityConfigType().equals( CapacityConfigType.ABSOLUTE_RESOURCE)) { queueResourceQuotas.setEffectiveMinResource(label, getMinResourceNormalized(queuePath, ((ParentQueue) parent).getEffectiveMinRatioPerResource(), minResource)); ...{code} > Implement weight mode in Capacity Scheduler > ------------------------------------------- > > Key: YARN-10504 > URL: https://issues.apache.org/jira/browse/YARN-10504 > Project: Hadoop YARN > Issue Type: Sub-task > Reporter: Benjamin Teke > Assignee: Benjamin Teke > Priority: Major > Attachments: YARN-10504.001.patch, YARN-10504.002.patch, > YARN-10504.003.patch, YARN-10504.004.patch, YARN-10504.005.patch, > YARN-10504.006.patch, YARN-10504.007.patch, YARN-10504.008.patch, > YARN-10504.009.patch, YARN-10504.010.patch, YARN-10504.ver-1.patch, > YARN-10504.ver-2.patch, YARN-10504.ver-3.patch > > > To allow the possibility to flexibly create queues in Capacity Scheduler a > weight mode should be introduced. The existing \{{capacity }}property should > be used with a different syntax, i.e: > root.users.capacity = (1.0) or ~1.0 or ^1.0 or @1.0 > root.users.capacity = 1.0w > root.users.capacity = w:1.0 > Weight support should not impact the existing functionality. > > The new functionality should: > * accept and validate the new weight values > * enforce a singular mode on the whole queue tree > * (re)calculate the relative (percentage-based) capacities based on the > weights during launch and every time the queue structure changes -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org