[
https://issues.apache.org/jira/browse/YARN-1445?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13834244#comment-13834244
]
Zhijie Shen commented on YARN-1445:
-----------------------------------
I did some more investigation. Here's some finding. Correct me if I'm wrong:
1. From FINISHING, RMApp can only go to FINISHED. Therefore, unless RM crashes
or hangs, the client will finally get the final state of RMApp
2. At the point of ApplicationReport, two pieces of information are not
available when RMApp is in FINISHING, but are available when RMApp is in
FINISHED: diagnostics and finishTime. Note that diagnostics may come from
RMAppAttempt as well as from the KILL signal (it is possible when RMApp is in
FINISHING). This diagnostics cannot be passed to RMApp when it is still in
FINISHING.
On the other side, if the users/clients doesn't care about the diagnostics
info, and the finishTime, they can deal with FINISHING/FINISHED in the same
way. However, if they do, they may expect the complete information only when
the state becomes FINISHED. Maybe this is also the guide of fixing the current
code where FINISHED is used?
Mover, projecting the future, we may have more information that are available
in FINISHED, but not in FINISHING (or even transitions from FINISHING to other
states?), as we are still actively fixing transition issues. Therefore I
incline to splitting the state in YarnApplicationState. Of course, for new user
oriented state, we need document clearly the difference between it and FINISHED.
Any idea?
> Separate FINISHING and FINISHED state in YarnApplicationState
> -------------------------------------------------------------
>
> Key: YARN-1445
> URL: https://issues.apache.org/jira/browse/YARN-1445
> Project: Hadoop YARN
> Issue Type: Bug
> Reporter: Xuan Gong
> Assignee: Xuan Gong
> Attachments: YARN-1445.1.patch, YARN-1445.2.patch
>
>
> Today, we will transmit both RMAppState.FINISHING and RMAppState.FINISHED to
> YarnApplicationState.FINISHED.
--
This message was sent by Atlassian JIRA
(v6.1#6144)