MENG DING updated YARN-4138:
    Attachment: YARN-4138-YARN-1197.1.patch

Thank you very much [~sunilg].

Attaching a WIP patch. Still need to add test cases.

Some considerations:
* I think there is no need to create a new 
{{ContainerResourceIncreaseAllocationExpirer}}. We can just reuse the existing 
{{ContainerAllocationExpirer}}, and change the type parameter. See below.
* Propose a new type parameter {{AllocationExpirationInfo}} which wraps the 
containerId, and a boolean value to indicate if this is for increase expiration.
* Modify {{ContainerExpiredSchedulerEvent}} to add a boolean field to indicate 
if this event is for increase expiration.
* Add RMContainerImpl.lastConfirmedResource to track the resource to rollback 
to when increase token expires
* When Scheduler receives the CONTAINER_EXPIRED event for container resource 
increase, it calls the existing {{decreaseContainer}} to rollback resources.

> Roll back container resource allocation after resource increase token expires
> -----------------------------------------------------------------------------
>                 Key: YARN-4138
>                 URL: https://issues.apache.org/jira/browse/YARN-4138
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: api, nodemanager, resourcemanager
>            Reporter: MENG DING
>            Assignee: MENG DING
>         Attachments: YARN-4138-YARN-1197.1.patch
> In YARN-1651, after container resource increase token expires, the running 
> container is killed.
> This ticket will change the behavior such that when a container resource 
> increase token expires, the resource allocation of the container will be 
> reverted back to the value before the increase.

This message was sent by Atlassian JIRA

Reply via email to