[ 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