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


Java ApplicationState.getApplicationSubmissionContext方法代码示例

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


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

示例1: testRecoverApplication

import org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.ApplicationState; //导入方法依赖的package包/类
public void testRecoverApplication(ApplicationState appState, RMState rmState)
    throws Exception {
  ApplicationSubmissionContext submissionContext =
      appState.getApplicationSubmissionContext();
  RMAppImpl application =
      new RMAppImpl(appState.getAppId(), rmContext, conf,
          submissionContext.getApplicationName(), null,
          submissionContext.getQueue(), submissionContext, null, null,
          appState.getSubmitTime(), submissionContext.getApplicationType(),
          submissionContext.getApplicationTags());
  Assert.assertEquals(RMAppState.NEW, application.getState());
  application.recover(rmState);

  // Application final status looked from recoveredFinalStatus
  Assert.assertTrue("Application is not in recoveredFinalStatus.",
      RMAppImpl.isAppInFinalState(application));

  // Trigger RECOVER event.
  application.handle(new RMAppEvent(appState.getAppId(),
      RMAppEventType.RECOVER));
  rmDispatcher.await();
  RMAppState finalState = appState.getState();
  Assert.assertEquals("Application is not in finalState.", finalState,
      application.getState());
}
 
开发者ID:Seagate,项目名称:hadoop-on-lustre2,代码行数:26,代码来源:TestRMAppTransitions.java

示例2: recoverApplication

import org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.ApplicationState; //导入方法依赖的package包/类
protected void recoverApplication(ApplicationState appState, RMState rmState)
    throws Exception {
  ApplicationSubmissionContext appContext =
      appState.getApplicationSubmissionContext();
  ApplicationId appId = appState.getAppId();

  // create and recover app.
  RMAppImpl application =
      createAndPopulateNewRMApp(appContext, appState.getSubmitTime(),
        appState.getUser());
  application.handle(new RMAppRecoverEvent(appId, rmState));
}
 
开发者ID:Nextzero,项目名称:hadoop-2.6.0-cdh5.4.3,代码行数:13,代码来源:RMAppManager.java

示例3: testRecoverApplication

import org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.ApplicationState; //导入方法依赖的package包/类
public void testRecoverApplication(ApplicationState appState, RMState rmState)
    throws Exception {
  ApplicationSubmissionContext submissionContext =
      appState.getApplicationSubmissionContext();
  RMAppImpl application =
      new RMAppImpl(appState.getAppId(), rmContext, conf,
          submissionContext.getApplicationName(), null,
          submissionContext.getQueue(), submissionContext, null, null,
          appState.getSubmitTime(), submissionContext.getApplicationType(),
          submissionContext.getApplicationTags(),
          BuilderUtils.newResourceRequest(
              RMAppAttemptImpl.AM_CONTAINER_PRIORITY, ResourceRequest.ANY,
              submissionContext.getResource(), 1));
  Assert.assertEquals(RMAppState.NEW, application.getState());

  RMAppEvent recoverEvent =
      new RMAppRecoverEvent(application.getApplicationId(), rmState);
  // Trigger RECOVER event.
  application.handle(recoverEvent);
  // Application final status looked from recoveredFinalStatus
  Assert.assertTrue("Application is not in recoveredFinalStatus.",
      RMAppImpl.isAppInFinalState(application));

  rmDispatcher.await();
  RMAppState finalState = appState.getState();
  Assert.assertEquals("Application is not in finalState.", finalState,
      application.getState());
}
 
开发者ID:Nextzero,项目名称:hadoop-2.6.0-cdh5.4.3,代码行数:29,代码来源:TestRMAppTransitions.java

示例4: recoverApplication

import org.apache.hadoop.yarn.server.resourcemanager.recovery.RMStateStore.ApplicationState; //导入方法依赖的package包/类
@SuppressWarnings("unchecked")
protected void
    recoverApplication(ApplicationState appState, RMState rmState)
        throws Exception {
  ApplicationSubmissionContext appContext =
      appState.getApplicationSubmissionContext();
  ApplicationId appId = appState.getAppId();

  // create and recover app.
  RMAppImpl application =
      createAndPopulateNewRMApp(appContext, appState.getSubmitTime(),
        appState.getUser());
  application.recover(rmState);
  if (isApplicationInFinalState(appState.getState())) {
    // We are synchronously moving the application into final state so that
    // momentarily client will not see this application in NEW state. Also
    // for finished applications we will avoid renewing tokens.
    application.handle(new RMAppEvent(appId, RMAppEventType.RECOVER));
    return;
  }

  if (UserGroupInformation.isSecurityEnabled()) {
    Credentials credentials = null;
    try {
      credentials = parseCredentials(appContext);
      // synchronously renew delegation token on recovery.
      rmContext.getDelegationTokenRenewer().addApplicationSync(appId,
        credentials, appContext.getCancelTokensWhenComplete());
      application.handle(new RMAppEvent(appId, RMAppEventType.RECOVER));
    } catch (Exception e) {
      LOG.warn("Unable to parse and renew delegation tokens.", e);
      this.rmContext.getDispatcher().getEventHandler()
        .handle(new RMAppRejectedEvent(appId, e.getMessage()));
      throw e;
    }
  } else {
    application.handle(new RMAppEvent(appId, RMAppEventType.RECOVER));
  }
}
 
开发者ID:Seagate,项目名称:hadoop-on-lustre2,代码行数:40,代码来源:RMAppManager.java


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