You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ambari.apache.org by "Akhil S Naik (JIRA)" <ji...@apache.org> on 2018/08/01 06:03:00 UTC
[jira] [Commented] (AMBARI-24296) [Yarn Queue Manager] Yarn Queue
manager is allowing to Create a Child Queue for queue-mappings enabled
Queue and Save it
[ https://issues.apache.org/jira/browse/AMBARI-24296?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16564783#comment-16564783 ]
Akhil S Naik commented on AMBARI-24296:
---------------------------------------
attached PR for Both Branch-2.7 and trunk
> [Yarn Queue Manager] Yarn Queue manager is allowing to Create a Child Queue for queue-mappings enabled Queue and Save it
> ------------------------------------------------------------------------------------------------------------------------
>
> Key: AMBARI-24296
> URL: https://issues.apache.org/jira/browse/AMBARI-24296
> Project: Ambari
> Issue Type: Bug
> Components: ambari-views
> Affects Versions: 2.7.0
> Reporter: Akhil S Naik
> Assignee: Akhil S Naik
> Priority: Major
> Labels: pull-request-available
> Time Spent: 50m
> Remaining Estimate: 0h
>
> Yarn Queue manager is allowing to Create a Child Queue for queue-mappings enabled Queue and Save the changes
> But the Operating is Failing as Yarn is having a check that Queue-mappings should only be allowed for Leaf queue
> Code which validates whether queue-mappings are enabled only for leaf-queue ( YARN CODE)
> {code:java}
> private static QueueMapping validateAndGetQueueMapping(
> CapacitySchedulerQueueManager queueManager, CSQueue queue,
> QueueMapping mapping, QueuePath queuePath) throws IOException {
> if (!(queue instanceof LeafQueue)) {
> throw new IOException(
> "mapping contains invalid or non-leaf queue : " + mapping.getQueue());
> }
> {code}
> The buggy code in [Ambari Yarn Queue Manager which needs rework]:
> https://github.com/apache/ambari/blob/79cca1c7184f1661236971dac70d85a83fab6c11/contrib/views/capacity-scheduler/src/main/resources/ui/app/controllers/queues.js#L410
> {code:java}
> hasInvalidMapping = queues.filter(function(queue){
> return !queue.get("queues"); //get all leaf queues
> }).map(function(queue){
> return queue.get("name");
> }).indexOf(mapping[2]) == -1;
> {code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)