Akhil S Naik created AMBARI-24296:
-------------------------------------

             Summary: [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
            Reporter: Akhil S Naik
            Assignee: Akhil S Naik


[Yarn Queue Manager] Yarn Queue manager is allowing to Create a Child Queue for 
queue-mappings enabled Queue and Save it

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:
{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 [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)

Reply via email to