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

ASF GitHub Bot commented on YARN-5605:
--------------------------------------

Github user templedf commented on a diff in the pull request:

    https://github.com/apache/hadoop/pull/124#discussion_r77863924
  
    --- Diff: 
hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/fair/FSAppAttempt.java
 ---
    @@ -478,6 +492,31 @@ public void clearPreemptedResources() {
         preemptedResources.setVirtualCores(0);
       }
     
    +  public boolean canContainerBePreempted(RMContainer container) {
    +    // Sanity check that the app owns this container
    +    if (!liveContainers.containsKey(container.getContainerId()) &&
    +        !newlyAllocatedContainers.contains(container)) {
    +      LOG.error("Looking to preempt container " + container +
    +          ". Container does not belong to app " + getApplicationId());
    +      return false;
    +    }
    +
    +    // Check if any of the parent queues are not preemptable
    +    // TODO (KK): Propagate the "preemptable" flag all the way down to the 
app
    +    // to avoid recursing up every time.
    +    FSQueue queue = getQueue();
    +    while (!queue.getQueueName().equals("root")) {
    +      if (!queue.isPreemptable()) {
    +        return false;
    +      }
    +    }
    +
    +    // Check if the app's allocation will be over its fairshare even
    +    // after preempting this container
    +    return (Resources.fitsIn(container.getAllocatedResource(),
    +        Resources.subtract(getResourceUsage(), getFairShare())));
    +  }
    --- End diff --
    
    Indentation


> Preempt containers (all on one node) to meet the requirement of starved 
> applications
> ------------------------------------------------------------------------------------
>
>                 Key: YARN-5605
>                 URL: https://issues.apache.org/jira/browse/YARN-5605
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: fairscheduler
>            Reporter: Karthik Kambatla
>            Assignee: Karthik Kambatla
>         Attachments: yarn-5605-1.patch
>
>
> Required items:
> # Identify starved applications
> # Identify a node that has enough containers from applications over their 
> fairshare.
> # Preempt those containers



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

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

Reply via email to