[ https://issues.apache.org/jira/browse/YARN-11079?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Susheel Gupta reassigned YARN-11079: ------------------------------------ Assignee: Susheel Gupta > Make an AbstractParentQueue to store common ParentQueue and > ManagedParentQueue functionality > -------------------------------------------------------------------------------------------- > > Key: YARN-11079 > URL: https://issues.apache.org/jira/browse/YARN-11079 > Project: Hadoop YARN > Issue Type: Sub-task > Components: capacity scheduler > Reporter: Benjamin Teke > Assignee: Susheel Gupta > Priority: Major > > ParentQueue is an instantiable class which stores the necessary functionality > of parent queues, however it is also extended by the > AbstractManagedParentQueue, which is an abstract class for storing managed > parent queue functionality. Since legacy AQC doesn't allow dynamic queues > next to static ones, managed parent queues technically behave like leaf > queues by not having any static child queues when created. This structure and > behaviour is really error prone, as for example if someone is not completely > aware of this and simply changes the checking order by first checking if the > queue in question is a ParentQueue in a method like > MappingRuleValidationContextImpl.isDynamicParent can result a completely > wrong return value (as a ManagedParent is a dynamic parent, but currently > it's also a ParentQueue, and ManagedParent cannot have the > isEligibleForAutoQueueCreation as true, so the method will return false). > {code:java} > private boolean isDynamicParent(CSQueue queue) { > if (queue == null) { > return false; > } > if (queue instanceof ManagedParentQueue) { > return true; > } > if (queue instanceof ParentQueue) { > return ((ParentQueue)queue).isEligibleForAutoQueueCreation(); > } > return false; > } > {code} > Similarly to YARN-11024 an AbstractParentQueue class should be created to > completely separate the managed parents from the instantiable ParentQueue > class. -- This message was sent by Atlassian Jira (v8.20.10#820010) --------------------------------------------------------------------- To unsubscribe, e-mail: yarn-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: yarn-issues-h...@hadoop.apache.org