[
https://issues.apache.org/jira/browse/YARN-1495?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13847081#comment-13847081
]
Vinod Kumar Vavilapalli commented on YARN-1495:
-----------------------------------------------
Hi Sandy, some questions and quick thoughts on this ticket:
- Any specific use-case? Example where it can be used? To justify this isn't
feature creep.
- What happens when scheduling-constraints are violated? The client will just
get an error? It kind of depends on the type of scheduling constraint.
- Who initiates the move any regular user or just admins? Given your
description of ACLs, seems like any one.
- Only running apps can be moved? There are races w.r.t apps that are
submitted but not accepted and close-to-completion apps.
- The ACLs choice seems straightforward and makes sense.
There is some non-trivial stuff that needs ironing out, outside of schedulers.
- While the move happens,
-- Apps may be in the process of submitting new requests. What happens to
them? I guess queue-move and new-requests should be synchronized.
-- Preemption monitors will need to be notified. As they kind of know a lot
about schedulers but sit outside the schedulers.
-- there will be a potential wild-change in the head-room for the
application.
> Allow moving apps between queues
> --------------------------------
>
> Key: YARN-1495
> URL: https://issues.apache.org/jira/browse/YARN-1495
> Project: Hadoop YARN
> Issue Type: New Feature
> Components: scheduler
> Affects Versions: 2.2.0
> Reporter: Sandy Ryza
> Assignee: Sandy Ryza
>
> This is an umbrella JIRA for work needed to allow moving YARN applications
> from one queue to another. The work will consist of additions in the command
> line options, additions in the client RM protocol, and changes in the
> schedulers to support this.
> I have a picture of how this should function in the Fair Scheduler, but I'm
> not familiar enough with the Capacity Scheduler for the same there.
> Ultimately, the decision to whether an application can be moved should go
> down to the scheduler - some schedulers may wish not to support this at all.
> However, schedulers that do support it should share some common semantics
> around ACLs and what happens to running containers.
> Here is how I see the general semantics working out:
> * A move request is issued by the client. After it gets past ACLs, the
> scheduler checks whether executing the move will violate any constraints. For
> the Fair Scheduler, these would be queue maxRunningApps and queue
> maxResources constraints
> * All running containers are transferred from the old queue to the new queue
> * All outstanding requests are transferred from the old queue to the new queue
> Here is I see the ACLs of this working out:
> * To move an app from a queue a user must have modify access on the app or
> administer access on the queue
> * To move an app to a queue a user must have submit access on the queue or
> administer access on the queue
--
This message was sent by Atlassian JIRA
(v6.1.4#6159)