当前位置: 首页>>代码示例>>Java>>正文


Java GetContainerStatusesResponse类代码示例

本文整理汇总了Java中org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse的典型用法代码示例。如果您正苦于以下问题:Java GetContainerStatusesResponse类的具体用法?Java GetContainerStatusesResponse怎么用?Java GetContainerStatusesResponse使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。


GetContainerStatusesResponse类属于org.apache.hadoop.yarn.api.protocolrecords包,在下文中一共展示了GetContainerStatusesResponse类的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: getContainerStatuses

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
/**
 * Get a list of container statuses running on this NodeManager
 */
@Override
public GetContainerStatusesResponse getContainerStatuses(
    GetContainerStatusesRequest request) throws YarnException, IOException {

  List<ContainerStatus> succeededRequests = new ArrayList<ContainerStatus>();
  Map<ContainerId, SerializedException> failedRequests =
      new HashMap<ContainerId, SerializedException>();
  UserGroupInformation remoteUgi = getRemoteUgi();
  NMTokenIdentifier identifier = selectNMTokenIdentifier(remoteUgi);
  for (ContainerId id : request.getContainerIds()) {
    try {
      ContainerStatus status = getContainerStatusInternal(id, identifier);
      succeededRequests.add(status);
    } catch (YarnException e) {
      failedRequests.put(id, SerializedException.newInstance(e));
    }
  }
  return GetContainerStatusesResponse.newInstance(succeededRequests,
    failedRequests);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:24,代码来源:ContainerManagerImpl.java

示例2: getContainerStatuses

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
@Override
synchronized public GetContainerStatusesResponse getContainerStatuses(
    GetContainerStatusesRequest request) throws YarnException {
  List<ContainerStatus> statuses = new ArrayList<ContainerStatus>();
  for (ContainerId containerId : request.getContainerIds()) {
    List<Container> appContainers =
        containers.get(containerId.getApplicationAttemptId()
          .getApplicationId());
    Container container = null;
    for (Container c : appContainers) {
      if (c.getId().equals(containerId)) {
        container = c;
      }
    }
    if (container != null
        && containerStatusMap.get(container).getState() != null) {
      statuses.add(containerStatusMap.get(container));
    }
  }
  return GetContainerStatusesResponse.newInstance(statuses, null);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:22,代码来源:NodeManager.java

示例3: getContainerStatus

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
@Override
public ContainerStatus getContainerStatus(ContainerId containerId,
    NodeId nodeId) throws YarnException, IOException {

  ContainerManagementProtocolProxyData proxy = null;
  List<ContainerId> containerIds = new ArrayList<ContainerId>();
  containerIds.add(containerId);
  try {
    proxy = cmProxy.getProxy(nodeId.toString(), containerId);
    GetContainerStatusesResponse response =
        proxy.getContainerManagementProtocol().getContainerStatuses(
            GetContainerStatusesRequest.newInstance(containerIds));
    if (response.getFailedRequests() != null
        && response.getFailedRequests().containsKey(containerId)) {
      Throwable t =
          response.getFailedRequests().get(containerId).deSerialize();
      parseAndThrowException(t);
    }
    ContainerStatus containerStatus = response.getContainerStatuses().get(0);
    return containerStatus;
  } finally {
    if (proxy != null) {
      cmProxy.mayBeCloseProxy(proxy);
    }
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:27,代码来源:NMClientImpl.java

示例4: getContainerStatuses

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
/**
 * Get a list of container statuses running on this NodeManager
 */
@Override
public GetContainerStatusesResponse getContainerStatuses(
    GetContainerStatusesRequest request) throws YarnException, IOException {

  List<ContainerStatus> succeededRequests = new ArrayList<ContainerStatus>();
  Map<ContainerId, SerializedException> failedRequests =
      new HashMap<ContainerId, SerializedException>();
  UserGroupInformation remoteUgi = getRemoteUgi();
  NMTokenIdentifier identifier = selectNMTokenIdentifier(remoteUgi);
  if (identifier == null) {
    throw RPCUtil.getRemoteException(INVALID_NMTOKEN_MSG);
  }
  for (ContainerId id : request.getContainerIds()) {
    try {
      ContainerStatus status = getContainerStatusInternal(id, identifier);
      succeededRequests.add(status);
    } catch (YarnException e) {
      failedRequests.put(id, SerializedException.newInstance(e));
    }
  }
  return GetContainerStatusesResponse.newInstance(succeededRequests,
    failedRequests);
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:27,代码来源:ContainerManagerImpl.java

示例5: getContainerStatuses

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
@Override
public GetContainerStatusesResponse getContainerStatuses(
    GetContainerStatusesRequest request) throws YarnException, IOException {
  GetContainerStatusesRequestProto requestProto =
      ((GetContainerStatusesRequestPBImpl) request).getProto();
  try {
    return new GetContainerStatusesResponsePBImpl(proxy.getContainerStatuses(
      null, requestProto));
  } catch (ServiceException e) {
    RPCUtil.unwrapAndThrowException(e);
    return null;
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:14,代码来源:ContainerManagementProtocolPBClientImpl.java

示例6: getContainerStatuses

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
@Override
public GetContainerStatusesResponse getContainerStatuses(
    GetContainerStatusesRequest request)
throws YarnException {
  GetContainerStatusesResponse response = 
      recordFactory.newRecordInstance(GetContainerStatusesResponse.class);
  response.setContainerStatuses(statuses);
  return response;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:10,代码来源:TestRPC.java

示例7: getContainerStatuses

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
@Override
public GetContainerStatusesResponse getContainerStatuses(
    GetContainerStatusesRequest request) throws YarnException, IOException {
  List<ContainerStatus> list = new ArrayList<ContainerStatus>();
  list.add(status);
  GetContainerStatusesResponse response =
      GetContainerStatusesResponse.newInstance(list, null);
  return null;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:10,代码来源:TestContainerLaunchRPC.java

示例8: getContainerStatus

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
private void
    getContainerStatus(YarnRPC rpc,
        org.apache.hadoop.yarn.api.records.Token nmToken,
        ContainerId containerId,
        ApplicationAttemptId appAttemptId, NodeId nodeId,
        boolean isExceptionExpected) throws Exception {
  List<ContainerId> containerIds = new ArrayList<ContainerId>();
  containerIds.add(containerId);
  GetContainerStatusesRequest request =
      GetContainerStatusesRequest.newInstance(containerIds);
  ContainerManagementProtocol proxy = null;
  try {
    proxy =
        getContainerManagementProtocolProxy(rpc, nmToken, nodeId,
            appAttemptId.toString());
    GetContainerStatusesResponse statuses = proxy.getContainerStatuses(request);
    if (statuses.getFailedRequests() != null
        && statuses.getFailedRequests().containsKey(containerId)) {
      parseAndThrowException(statuses.getFailedRequests().get(containerId)
        .deSerialize());
    }
  } finally {
    if (proxy != null) {
      rpc.stopProxy(proxy, conf);
    }
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:28,代码来源:TestContainerManagerSecurity.java

示例9: testContainerManagerInitialization

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
@Test
public void testContainerManagerInitialization() throws IOException {

  containerManager.start();

  InetAddress localAddr = InetAddress.getLocalHost();
  String fqdn = localAddr.getCanonicalHostName();
  if (!localAddr.getHostAddress().equals(fqdn)) {
    // only check if fqdn is not same as ip
    // api returns ip in case of resolution failure
    Assert.assertEquals(fqdn, context.getNodeId().getHost());
  }

  // Just do a query for a non-existing container.
  boolean throwsException = false;
  try {
    List<ContainerId> containerIds = new ArrayList<ContainerId>();
    ContainerId id =createContainerId(0);
    containerIds.add(id);
    GetContainerStatusesRequest request =
        GetContainerStatusesRequest.newInstance(containerIds);
    GetContainerStatusesResponse response =
        containerManager.getContainerStatuses(request);
    if(response.getFailedRequests().containsKey(id)){
      throw response.getFailedRequests().get(id).deSerialize();
    }
  } catch (Throwable e) {
    throwsException = true;
  }
  Assert.assertTrue(throwsException);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:32,代码来源:TestContainerManager.java

示例10: getContainerStatuses

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
@Override
public GetContainerStatusesResponse getContainerStatuses(
    GetContainerStatusesRequest request) throws IOException {
  List<ContainerStatus> statuses = new ArrayList<ContainerStatus>();
  statuses.add(status);
  return GetContainerStatusesResponse.newInstance(statuses, null);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:8,代码来源:TestContainerLauncher.java

示例11: getContainerStatuses

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
@Override
public GetContainerStatusesResponse getContainerStatuses(
    GetContainerStatusesRequest request) throws YarnException, IOException {
  ContainersStatusResponse containerStatuses = containerManager
      .getContainerStatuses(request.getContainerIds());
  return GetContainerStatusesResponse.newInstance(
      containerStatuses.getStatuses(), containerStatuses.getFailedRequests());
}
 
开发者ID:intel-hpdd,项目名称:scheduling-connector-for-hadoop,代码行数:9,代码来源:HPCContainerManagementProtocolImpl.java

示例12: getContainerStatuses

import org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse; //导入依赖的package包/类
@Override
public GetContainerStatusesResponse getContainerStatuses(
    GetContainerStatusesRequest request) throws YarnException, IOException {
  Exception e = new Exception("Dummy function", new Exception(
      "Dummy function cause"));
  throw new YarnException(e);
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:8,代码来源:TestContainerResourceIncreaseRPC.java


注:本文中的org.apache.hadoop.yarn.api.protocolrecords.GetContainerStatusesResponse类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。