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


Java SerializedException.newInstance方法代码示例

本文整理汇总了Java中org.apache.hadoop.yarn.api.records.SerializedException.newInstance方法的典型用法代码示例。如果您正苦于以下问题:Java SerializedException.newInstance方法的具体用法?Java SerializedException.newInstance怎么用?Java SerializedException.newInstance使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在org.apache.hadoop.yarn.api.records.SerializedException的用法示例。


在下文中一共展示了SerializedException.newInstance方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: testSerializedExceptionDeSer

import org.apache.hadoop.yarn.api.records.SerializedException; //导入方法依赖的package包/类
@Test(timeout=10000)
public void testSerializedExceptionDeSer() throws Exception{
  // without cause
  YarnException yarnEx = new YarnException("Yarn_Exception");
  SerializedException serEx = SerializedException.newInstance(yarnEx);
  Throwable throwable = serEx.deSerialize();
  Assert.assertEquals(yarnEx.getClass(), throwable.getClass());
  Assert.assertEquals(yarnEx.getMessage(), throwable.getMessage());

  // with cause
  IOException ioe = new IOException("Test_IOException");
  RuntimeException runtimeException =
      new RuntimeException("Test_RuntimeException", ioe);
  YarnException yarnEx2 =
      new YarnException("Test_YarnException", runtimeException);

  SerializedException serEx2 = SerializedException.newInstance(yarnEx2);
  Throwable throwable2 = serEx2.deSerialize();
  throwable2.printStackTrace();
  Assert.assertEquals(yarnEx2.getClass(), throwable2.getClass());
  Assert.assertEquals(yarnEx2.getMessage(), throwable2.getMessage());

  Assert.assertEquals(runtimeException.getClass(), throwable2.getCause().getClass());
  Assert.assertEquals(runtimeException.getMessage(), throwable2.getCause().getMessage());

  Assert.assertEquals(ioe.getClass(), throwable2.getCause().getCause().getClass());
  Assert.assertEquals(ioe.getMessage(), throwable2.getCause().getCause().getMessage());
}
 
开发者ID:naver,项目名称:hadoop,代码行数:29,代码来源:TestPBRecordImpl.java

示例2: startContainers

import org.apache.hadoop.yarn.api.records.SerializedException; //导入方法依赖的package包/类
@Override
public ContainersResponse startContainers(List<StartContainerRequest> requests)
    throws IOException {

  List<ContainerId> succeededContainers = new ArrayList<ContainerId>();
  Map<ContainerId, SerializedException> failedRequests =
      new HashMap<ContainerId, SerializedException>();

  for (StartContainerRequest startContainerRequest : requests) {
    ContainerLaunchContext containerLaunchContext = startContainerRequest
        .getContainerLaunchContext();
    Token containerToken = startContainerRequest.getContainerToken();
    String containerIdStr = new String(containerToken.getIdentifier().array());
    ContainerId containerId = ConverterUtils.toContainerId(containerIdStr);

    int pbsJobId = containersInfo.get(containerId);

    try {
      LOG.info("Starting container : " + containerIdStr
          + " for the PBS Job id : " + pbsJobId);
      // Launch Containers
      String containerHostName = ContainerResponses.getResponse(pbsJobId)
          .getContainerHostName();
      PBSCommandExecutor.launchContainer(containerLaunchContext,
          containerIdStr, null, conf, pbsJobId, false, containerHostName);
      succeededContainers.add(containerId);
      LaunchedPBSJobs.addRunningContainer(containerId, pbsJobId);
    } catch (Throwable t) {
      LOG.error("Failed to launch container : " + containerIdStr, t);
      SerializedException exception = SerializedException.newInstance(t);
      failedRequests.put(containerId, exception);
    }
  }

  Map<String, ByteBuffer> allServicesMetaData = new HashMap<String, ByteBuffer>();
  ByteBuffer buffer = ByteBuffer.allocate(200);
  buffer.putInt(100);
  allServicesMetaData.put("mapreduce_shuffle", buffer);

  ContainersResponse response = new ContainersResponse();
  response.setServicesMetaData(allServicesMetaData);
  response.setFailedContainers(failedRequests);
  response.setSucceededContainers(succeededContainers);
  return response;
}
 
开发者ID:intel-hpdd,项目名称:scheduling-connector-for-hadoop,代码行数:46,代码来源:PBSContainerManager.java


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