RMAppNewlySavingTransition(基于hadoop 2.7.6)
经过RMAppNewlySavingTransition后,RMApp的状态由NEW转为NEW_SAVING.根据提交上下文创建应用程序状态数据结构(主要是提交时间,启动事件,提交上下文,提交用户等),然后触发RMStateStoreEventType.STORE_APP事件,STORE_APP事件处理器会把应用程序数据结构存储到ZK上,详见3.
这个Transition比较简单,直接上代码清单
private static final class RMAppNewlySavingTransition extends RMAppTransition {
@Override
public void transition(RMAppImpl app, RMAppEvent event) {
LOG.info("Storing application with id " + app.applicationId);
app.rmContext.getStateStore().storeNewApplication(app);
}
}
鉴于详见1对rmContext的说明,stateStore是从ResourceManager上下文从提取的,可以猜到stateStore是ResourceManager初始化的时候创建的。见RMActiveServices的se