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


Java RMAppAttemptState类代码示例

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


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

示例1: appAttemptFinished

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
@SuppressWarnings("unchecked")
public void appAttemptFinished(RMAppAttempt appAttempt,
    RMAppAttemptState appAttemtpState, RMApp app, long finishedTime) {
  if (publishSystemMetrics) {
    dispatcher.getEventHandler().handle(
        new AppAttemptFinishedEvent(
            appAttempt.getAppAttemptId(),
            appAttempt.getTrackingUrl(),
            appAttempt.getOriginalTrackingUrl(),
            appAttempt.getDiagnostics(),
            // app will get the final status from app attempt, or create one
            // based on app state if it doesn't exist
            app.getFinalApplicationStatus(),
            RMServerUtils.createApplicationAttemptState(appAttemtpState),
            finishedTime));
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:18,代码来源:SystemMetricsPublisher.java

示例2: stop

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
synchronized public void stop(RMAppAttemptState rmAppAttemptFinalState) {
  // clear pending resources metrics for the application
  QueueMetrics metrics = queue.getMetrics();
  for (Map<String, ResourceRequest> asks : requests.values()) {
    ResourceRequest request = asks.get(ResourceRequest.ANY);
    if (request != null) {
      metrics.decrPendingResources(user, request.getNumContainers(),
          request.getCapability());
      
      // Update Queue
      queue.decPendingResource(
          request.getNodeLabelExpression(),
          Resources.multiply(request.getCapability(),
              request.getNumContainers()));
    }
  }
  metrics.finishAppAttempt(applicationId, pending, user);
  
  // Clear requests themselves
  clearRequests();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:22,代码来源:AppSchedulingInfo.java

示例3: newInstance

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
public static ApplicationAttemptStateData newInstance(
    ApplicationAttemptId attemptId, Container container,
    Credentials attemptTokens, long startTime, RMAppAttemptState finalState,
    String finalTrackingUrl, String diagnostics,
    FinalApplicationStatus amUnregisteredFinalStatus, int exitStatus,
    long finishTime, long memorySeconds, long vcoreSeconds, long gcoreSeconds) {
  ApplicationAttemptStateData attemptStateData =
      Records.newRecord(ApplicationAttemptStateData.class);
  attemptStateData.setAttemptId(attemptId);
  attemptStateData.setMasterContainer(container);
  attemptStateData.setAppAttemptTokens(attemptTokens);
  attemptStateData.setState(finalState);
  attemptStateData.setFinalTrackingUrl(finalTrackingUrl);
  attemptStateData.setDiagnostics(diagnostics == null ? "" : diagnostics);
  attemptStateData.setStartTime(startTime);
  attemptStateData.setFinalApplicationStatus(amUnregisteredFinalStatus);
  attemptStateData.setAMContainerExitStatus(exitStatus);
  attemptStateData.setFinishTime(finishTime);
  attemptStateData.setMemorySeconds(memorySeconds);
  attemptStateData.setVcoreSeconds(vcoreSeconds);
  attemptStateData.setGcoreSeconds(gcoreSeconds);
  return attemptStateData;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:24,代码来源:ApplicationAttemptStateData.java

示例4: testAppWithNoContainers

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
@Test (timeout = 30000)
public void testAppWithNoContainers() throws Exception {
  Logger rootLogger = LogManager.getRootLogger();
  rootLogger.setLevel(Level.DEBUG);
  MockRM rm = new MockRM(conf);
  rm.start();
  MockNM nm1 = rm.registerNode("h1:1234", 5120);
  
  RMApp app = rm.submitApp(2000);

  //kick the scheduling
  nm1.nodeHeartbeat(true);

  RMAppAttempt attempt = app.getCurrentAppAttempt();
  MockAM am = rm.sendAMLaunched(attempt.getAppAttemptId());
  am.registerAppAttempt();
  am.unregisterAppAttempt();
  nm1.nodeHeartbeat(attempt.getAppAttemptId(), 1, ContainerState.COMPLETE);
  am.waitForState(RMAppAttemptState.FINISHED);
  rm.stop();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:22,代码来源:TestRM.java

示例5: testInvalidatedAMHostPortOnAMRestart

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
@Test (timeout = 60000)
public void testInvalidatedAMHostPortOnAMRestart() throws Exception {
  MockRM rm1 = new MockRM(conf);
  rm1.start();
  MockNM nm1 =
      new MockNM("127.0.0.1:1234", 15120, rm1.getResourceTrackerService());
  nm1.registerNode();

  // a failed app
  RMApp app2 = rm1.submitApp(200);
  MockAM am2 = MockRM.launchAndRegisterAM(app2, rm1, nm1);
  nm1
    .nodeHeartbeat(am2.getApplicationAttemptId(), 1, ContainerState.COMPLETE);
  am2.waitForState(RMAppAttemptState.FAILED);
  rm1.waitForState(app2.getApplicationId(), RMAppState.ACCEPTED);

  // before new attempt is launched, the app report returns the invalid AM
  // host and port.
  GetApplicationReportRequest request1 =
      GetApplicationReportRequest.newInstance(app2.getApplicationId());
  ApplicationReport report1 =
      rm1.getClientRMService().getApplicationReport(request1)
        .getApplicationReport();
  Assert.assertEquals("N/A", report1.getHost());
  Assert.assertEquals(-1, report1.getRpcPort());
}
 
开发者ID:naver,项目名称:hadoop,代码行数:27,代码来源:TestRM.java

示例6: finishApplicationMaster

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
private void finishApplicationMaster(RMApp rmApp, MockRM rm, MockNM nm,
    MockAM am, FinishApplicationMasterRequest req) throws Exception {
  RMState rmState =
      ((MemoryRMStateStore) rm.getRMContext().getStateStore()).getState();
  Map<ApplicationId, ApplicationStateData> rmAppState =
      rmState.getApplicationState();
  am.unregisterAppAttempt(req,true);
  am.waitForState(RMAppAttemptState.FINISHING);
  nm.nodeHeartbeat(am.getApplicationAttemptId(), 1, ContainerState.COMPLETE);
  am.waitForState(RMAppAttemptState.FINISHED);
  rm.waitForState(rmApp.getApplicationId(), RMAppState.FINISHED);
  // check that app/attempt is saved with the final state
  ApplicationStateData appState = rmAppState.get(rmApp.getApplicationId());
  Assert
    .assertEquals(RMAppState.FINISHED, appState.getState());
  Assert.assertEquals(RMAppAttemptState.FINISHED,
    appState.getAttempt(am.getApplicationAttemptId()).getState());
}
 
开发者ID:naver,项目名称:hadoop,代码行数:19,代码来源:TestRMRestart.java

示例7: waitForState

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
public void waitForState(ApplicationAttemptId attemptId, 
                         RMAppAttemptState finalState)
    throws Exception {
  RMApp app = getRMContext().getRMApps().get(attemptId.getApplicationId());
  Assert.assertNotNull("app shouldn't be null", app);
  RMAppAttempt attempt = app.getRMAppAttempt(attemptId);
  int timeoutSecs = 0;
  while (!finalState.equals(attempt.getAppAttemptState()) && timeoutSecs++ < 40) {
    System.out.println("AppAttempt : " + attemptId 
        + " State is : " + attempt.getAppAttemptState()
        + " Waiting for state : " + finalState);
    Thread.sleep(1000);
  }
  System.out.println("Attempt State is : " + attempt.getAppAttemptState());
  Assert.assertEquals("Attempt state is not correct (timedout)", finalState,
      attempt.getAppAttemptState());
}
 
开发者ID:naver,项目名称:hadoop,代码行数:18,代码来源:MockRM.java

示例8: sendAMLaunched

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
public MockAM sendAMLaunched(ApplicationAttemptId appAttemptId)
    throws Exception {
  MockAM am = new MockAM(getRMContext(), masterService, appAttemptId);
  am.waitForState(RMAppAttemptState.ALLOCATED);
  //create and set AMRMToken
  Token<AMRMTokenIdentifier> amrmToken =
      this.rmContext.getAMRMTokenSecretManager().createAndGetAMRMToken(
        appAttemptId);
  ((RMAppAttemptImpl) this.rmContext.getRMApps()
    .get(appAttemptId.getApplicationId()).getRMAppAttempt(appAttemptId))
    .setAMRMToken(amrmToken);
  getRMContext()
      .getDispatcher()
      .getEventHandler()
      .handle(
          new RMAppAttemptEvent(appAttemptId, RMAppAttemptEventType.LAUNCHED));
  return am;
}
 
开发者ID:naver,项目名称:hadoop,代码行数:19,代码来源:MockRM.java

示例9: waitForState

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
public void waitForState(RMAppAttemptState finalState) throws Exception {
  RMApp app = context.getRMApps().get(attemptId.getApplicationId());
  RMAppAttempt attempt = app.getRMAppAttempt(attemptId);
  int timeoutSecs = 0;
  while (!finalState.equals(attempt.getAppAttemptState())
      && timeoutSecs++ < 40) {
    System.out
        .println("AppAttempt : " + attemptId + " State is : " 
            + attempt.getAppAttemptState()
            + " Waiting for state : " + finalState);
    Thread.sleep(1000);
  }
  System.out.println("AppAttempt State is : " + attempt.getAppAttemptState());
  Assert.assertEquals("AppAttempt state is not correct (timedout)",
      finalState, attempt.getAppAttemptState());
}
 
开发者ID:naver,项目名称:hadoop,代码行数:17,代码来源:MockAM.java

示例10: unregisterAppAttempt

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
public void unregisterAppAttempt(final FinishApplicationMasterRequest req,
    boolean waitForStateRunning) throws Exception {
  if (waitForStateRunning) {
    waitForState(RMAppAttemptState.RUNNING);
  }
  if (ugi == null) {
    ugi =  UserGroupInformation.createRemoteUser(attemptId.toString());
    Token<AMRMTokenIdentifier> token =
        context.getRMApps()
            .get(attemptId.getApplicationId())
            .getRMAppAttempt(attemptId).getAMRMToken();
    ugi.addTokenIdentifier(token.decodeIdentifier());
  }
  try {
    ugi.doAs(new PrivilegedExceptionAction<Object>() {
      @Override
      public Object run() throws Exception {
        amRMProtocol.finishApplicationMaster(req);
        return null;
      }
    });
  } catch (UndeclaredThrowableException e) {
    throw (Exception) e.getCause();
  }
}
 
开发者ID:naver,项目名称:hadoop,代码行数:26,代码来源:MockAM.java

示例11: testKillAppWhenFailoverHappensAtRunningState

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
@Test (timeout = 20000)
public void testKillAppWhenFailoverHappensAtRunningState()
    throws Exception {
  startRMs();
  MockNM nm1 = new MockNM("127.0.0.1:1234", 15120,
      rm1.getResourceTrackerService());
  nm1.registerNode();

  // create app and launch the AM
  RMApp app0 = rm1.submitApp(200);
  MockAM am0 = launchAM(app0, rm1, nm1);

  // failover and kill application
  // The application is at RUNNING State when failOver happens.
  // Since RMStateStore has already saved ApplicationState, the active RM
  // will load the ApplicationState. After that, the application will be at
  // ACCEPTED State. Because the application is not at Final State,
  // KillApplicationResponse.getIsKillCompleted is expected to return false.
  failOverAndKillApp(app0.getApplicationId(),
      am0.getApplicationAttemptId(), RMAppState.RUNNING,
      RMAppAttemptState.RUNNING, RMAppState.ACCEPTED);
}
 
开发者ID:naver,项目名称:hadoop,代码行数:23,代码来源:TestKillApplicationWithRMHA.java

示例12: checkActiveRMFunctionality

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
private void checkActiveRMFunctionality() throws Exception {
  assertEquals(STATE_ERR, HAServiceState.ACTIVE,
      rm.adminService.getServiceStatus().getState());
  assertTrue("Active RM services aren't started",
      rm.areActiveServicesRunning());
  assertTrue("RM is not ready to become active",
      rm.adminService.getServiceStatus().isReadyToBecomeActive());

  try {
    rm.getNewAppId();
    rm.registerNode("127.0.0.1:1", 2048);
    app = rm.submitApp(1024);
    attempt = app.getCurrentAppAttempt();
    rm.waitForState(attempt.getAppAttemptId(), RMAppAttemptState.SCHEDULED);
  } catch (Exception e) {
    fail("Unable to perform Active RM functions");
    LOG.error("ActiveRM check failed", e);
  }

  checkActiveRMWebServices();
}
 
开发者ID:naver,项目名称:hadoop,代码行数:22,代码来源:TestRMHA.java

示例13: appAttemptFinished

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
@SuppressWarnings("unchecked")
public void appAttemptFinished(RMAppAttempt appAttempt,
    RMAppAttemptState appAttemtpState, RMApp app, long finishedTime) {
  if (publishSystemMetrics) {
    ContainerId container = (appAttempt.getMasterContainer() == null) ? null
        : appAttempt.getMasterContainer().getId();
    dispatcher.getEventHandler().handle(
        new AppAttemptFinishedEvent(
            appAttempt.getAppAttemptId(),
            appAttempt.getTrackingUrl(),
            appAttempt.getOriginalTrackingUrl(),
            appAttempt.getDiagnostics(),
            // app will get the final status from app attempt, or create one
            // based on app state if it doesn't exist
            app.getFinalApplicationStatus(),
            RMServerUtils.createApplicationAttemptState(appAttemtpState),
            finishedTime,
            container));
  }
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:21,代码来源:SystemMetricsPublisher.java

示例14: stop

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
synchronized public void stop(RMAppAttemptState rmAppAttemptFinalState) {
  // clear pending resources metrics for the application
  QueueMetrics metrics = queue.getMetrics();
  for (Map<String, ResourceRequest> asks : resourceRequestMap.values()) {
    ResourceRequest request = asks.get(ResourceRequest.ANY);
    if (request != null) {
      metrics.decrPendingResources(user, request.getNumContainers(),
          request.getCapability());
      
      // Update Queue
      queue.decPendingResource(
          request.getNodeLabelExpression(),
          Resources.multiply(request.getCapability(),
              request.getNumContainers()));
    }
  }
  metrics.finishAppAttempt(applicationId, pending, user);
  
  // Clear requests themselves
  clearRequests();
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:22,代码来源:AppSchedulingInfo.java

示例15: newInstance

import org.apache.hadoop.yarn.server.resourcemanager.rmapp.attempt.RMAppAttemptState; //导入依赖的package包/类
public static ApplicationAttemptStateData newInstance(
    ApplicationAttemptId attemptId, Container container,
    Credentials attemptTokens, long startTime, RMAppAttemptState finalState,
    String finalTrackingUrl, String diagnostics,
    FinalApplicationStatus amUnregisteredFinalStatus, int exitStatus,
    long finishTime, long memorySeconds, long vcoreSeconds) {
  ApplicationAttemptStateData attemptStateData =
      Records.newRecord(ApplicationAttemptStateData.class);
  attemptStateData.setAttemptId(attemptId);
  attemptStateData.setMasterContainer(container);
  attemptStateData.setAppAttemptTokens(attemptTokens);
  attemptStateData.setState(finalState);
  attemptStateData.setFinalTrackingUrl(finalTrackingUrl);
  attemptStateData.setDiagnostics(diagnostics == null ? "" : diagnostics);
  attemptStateData.setStartTime(startTime);
  attemptStateData.setFinalApplicationStatus(amUnregisteredFinalStatus);
  attemptStateData.setAMContainerExitStatus(exitStatus);
  attemptStateData.setFinishTime(finishTime);
  attemptStateData.setMemorySeconds(memorySeconds);
  attemptStateData.setVcoreSeconds(vcoreSeconds);
  return attemptStateData;
}
 
开发者ID:aliyun-beta,项目名称:aliyun-oss-hadoop-fs,代码行数:23,代码来源:ApplicationAttemptStateData.java


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