[ 
https://issues.apache.org/jira/browse/YARN-6917?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Eric Payne updated YARN-6917:
-----------------------------
    Attachment: YARN-6917.001.patch

The queue path is only ever set during queue initialization or 
reinitialization. During this time, new queue objects are created and set into 
a new hierarchy. This patch sets the final queue path during initialization. 
Queues must be stopped before reconfiguring, and queues can only be made from 
leaf queues into parent queues and given children. Or, a totally new queue can 
be added to an existing parent queue.

I did not include a unit test because this is a performance enhancement and did 
not change the functionality. There are already many tests calling the 
{{getQueuePath()}} and {{reinitialize}} APIs.


> Queue path is recomputed from scratch on every allocation
> ---------------------------------------------------------
>
>                 Key: YARN-6917
>                 URL: https://issues.apache.org/jira/browse/YARN-6917
>             Project: Hadoop YARN
>          Issue Type: Improvement
>          Components: capacityscheduler
>    Affects Versions: 2.8.1
>            Reporter: Jason Lowe
>            Assignee: Eric Payne
>            Priority: Minor
>         Attachments: YARN-6917.001.patch
>
>
> As part of the discussion in YARN-6901 I noticed that we are recomputing a 
> queue's path for every allocation.  Currently getting the queue's path 
> involves calling getQueuePath on the parent then building onto that string 
> with the basename of the queue.  In turn the parent's getQueuePath method 
> does the same, so we end up spending time recomputing a string that will 
> never change until a reconfiguration.
> Ideally the queue path should be computed once during queue initialization 
> rather than on-demand.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to