[ https://issues.apache.org/jira/browse/YARN-1412?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13993616#comment-13993616 ]
Chris Riccomini commented on YARN-1412: --------------------------------------- Seeing this as well (YARN-2027). > Allocating Containers on a particular Node in Yarn > -------------------------------------------------- > > Key: YARN-1412 > URL: https://issues.apache.org/jira/browse/YARN-1412 > Project: Hadoop YARN > Issue Type: Bug > Affects Versions: 2.2.0 > Environment: centos, Hadoop 2.2.0 > Reporter: gaurav gupta > > Summary of the problem: > If I pass the node on which I want container and set relax locality default > which is true, I don't get back the container on the node specified even if > the resources are available on the node. It doesn't matter if I set rack or > not. > Here is the snippet of the code that I am using > AMRMClient<ContainerRequest> amRmClient = AMRMClient.createAMRMClient();; > String host = "h1"; > Resource capability = Records.newRecord(Resource.class); > capability.setMemory(memory); > nodes = new String[] {host}; > // in order to request a host, we also have to request the rack > racks = new String[] {"/default-rack"}; > List<ContainerRequest> containerRequests = new > ArrayList<ContainerRequest>(); > List<ContainerId> releasedContainers = new ArrayList<ContainerId>(); > containerRequests.add(new ContainerRequest(capability, nodes, racks, > Priority.newInstance(priority))); > if (containerRequests.size() > 0) { > LOG.info("Asking RM for containers: " + containerRequests); > for (ContainerRequest cr : containerRequests) { > LOG.info("Requested container: {}", cr.toString()); > amRmClient.addContainerRequest(cr); > } > } > for (ContainerId containerId : releasedContainers) { > LOG.info("Released container, id={}", containerId.getId()); > amRmClient.releaseAssignedContainer(containerId); > } > return amRmClient.allocate(0); -- This message was sent by Atlassian JIRA (v6.2#6252)