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

Sandy Ryza commented on YARN-752:
---------------------------------

In my vision of YARN-521, we will add an additional boolean parameter to the 
ContainerRequest constructor, relaxLocality.  If a ContainerRequest's 
relaxLocality is false, and both nodes and racks are passed in to a 
ContainerRequest, we have a few options for how to handle it:
* Set relaxLocality to false only for all non-explicit ResourceRequests.  This 
would mean that if I submit a ContainerRequest with both nodes and the racks 
that those nodes are on, containers could be given on any nodes on those racks. 
* If there are any node requests, set relaxLocality to false for all rack 
requests that those nodes are on, even if the racks are explicitly given.  This 
would mean that if I submit a request with a node, the rack it is on, and 
another rack, containers could be given on that node or on any node on the 
other rack.
* If there are any node requests, set relaxLocality to false for all rack 
requests.  This would mean that if I submit a request with a node, the rack it 
is on, and another rack, containers could be given only on the node.

bq. If you agree that the logic is based on enabling/disabling strict 
allocations, the following in the patch won't be correct any longer, right?
Some additional explanation will be needed, but in general, I don't think all 
schedulers will be required to handle the relaxLocality flag.
                
> In AMRMClient, automatically add corresponding rack requests for requested 
> nodes
> --------------------------------------------------------------------------------
>
>                 Key: YARN-752
>                 URL: https://issues.apache.org/jira/browse/YARN-752
>             Project: Hadoop YARN
>          Issue Type: Improvement
>          Components: api, applications
>    Affects Versions: 2.0.4-alpha
>            Reporter: Sandy Ryza
>            Assignee: Sandy Ryza
>         Attachments: YARN-752-1.patch, YARN-752-1.patch, YARN-752-2.patch, 
> YARN-752.patch
>
>
> A ContainerRequest that includes node-level requests must also include 
> matching rack-level requests for the racks that those nodes are on.  When a 
> node is present without its rack, it makes sense for the client to 
> automatically add the node's rack.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to