Wangda Tan updated YARN-3635:
    Attachment: YARN-3635.4.patch

Sorry for my late response, [~vinodkv]. Just have some bandwidth to do the 

Attached ver.4 addressed most of your comments, now queue-placement-rules is a 
separated module in RM, and scheduler initializes it. RMAppManager uses it to 
do queue placing.

Defined interfaces are not exactly as same as you suggested, I put minimal set 
of interfaces needed in my mind. You can take a look at: 
{{org.apache.hadoop.yarn.server.resourcemanager.placement}} for details.

And the ver.4 patch makes original CapacityScheduler.QueueMapping becomes a 
rule: UserGroupPlacementRule.


> Get-queue-mapping should be a common interface of YarnScheduler
> ---------------------------------------------------------------
>                 Key: YARN-3635
>                 URL: https://issues.apache.org/jira/browse/YARN-3635
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: scheduler
>            Reporter: Wangda Tan
>            Assignee: Wangda Tan
>         Attachments: YARN-3635.1.patch, YARN-3635.2.patch, YARN-3635.3.patch, 
> YARN-3635.4.patch
> Currently, both of fair/capacity scheduler support queue mapping, which makes 
> scheduler can change queue of an application after submitted to scheduler.
> One issue of doing this in specific scheduler is: If the queue after mapping 
> has different maximum_allocation/default-node-label-expression of the 
> original queue, {{validateAndCreateResourceRequest}} in RMAppManager checks 
> the wrong queue.
> I propose to make the queue mapping as a common interface of scheduler, and 
> RMAppManager set the queue after mapping before doing validations.

This message was sent by Atlassian JIRA

Reply via email to