[ 
https://issues.apache.org/jira/browse/YARN-2883?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15172264#comment-15172264
 ] 

Arun Suresh commented on YARN-2883:
-----------------------------------

On going thru the patch again, I feel a better (and safer) way to introduce the 
changes is 
* to extend both the {{ContainerManagerImpl}} and the {{ContainersMonitorImpl}} 
classes into two new subclasses {{QueuedContainerManager}} and 
{{QueuedContainersManager}}
* Then we can move all the required data structures (all the new collections) 
as well as the Event Handlers into the new classes.
* We can also get rid of all the {{if 
context.isDistributedSchedulingEnabled()}} checks. Since we would need to do it 
only once in the {{NodeManager}} when we create the instance of the 
{{ContainerManager}}
* We can also reason about the code flow better since we the changes would be 
isolated to the new classes.

> Queuing of container requests in the NM
> ---------------------------------------
>
>                 Key: YARN-2883
>                 URL: https://issues.apache.org/jira/browse/YARN-2883
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: nodemanager, resourcemanager
>            Reporter: Konstantinos Karanasos
>            Assignee: Konstantinos Karanasos
>         Attachments: YARN-2883-yarn-2877.001.patch
>
>
> We propose to add a queue in each NM, where queueable container requests can 
> be held.
> Based on the available resources in the node and the containers in the queue, 
> the NM will decide when to allow the execution of a queued container.
> In order to ensure the instantaneous start of a guaranteed-start container, 
> the NM may decide to pre-empt/kill running queueable containers.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to