[ 
https://issues.apache.org/jira/browse/YARN-1445?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13834049#comment-13834049
 ] 

Xuan Gong commented on YARN-1445:
---------------------------------

bq. A nit: ResourceManagerRest.apt.vm needs to be updated as well

Updated

bq. Do we need to take care of FINISHING case in ClientServiceDelegate, 
WebAppProxyServlet and etc? IMOH, it's good to double check the places where 
FINISHED is used, to see whether we need to handle FINISHING given the change.

Let us walk thru the list:
1. At LogsCLI::verifyApplicationState(), the function is used to figure out the 
RMApp state, and see if it is good time to check Logs. If the 
YarnApplicationState is FINISHING, it will return -1. It means it is not good 
time to check log. I think that makes sense. RMApp will notify NM to start log 
aggregation when it is at FINISHED/KILLED/FAILED state

2. At Client::monitorApplication() and UnmanagedAMLauncher::run(). Both of them 
are used to monitor the application whether it is finished. So, handle 
YarnApplicationState.FINISHED alone should be enough.

3.WebAppProxyServlet::doGet(). I think we might need to handle FINISHING as 
well as FINISHED. 

4.At TypeConvert::fromYarn(), We can handle FINISHING as well as FINISHED. It 
will check the FinalApplicationStatus, this FinalApplicationStatus is based on 
the currentAppAttempt's finalStatus, or is generated by currentState of RMApp 
(In this case, the RMApp's FINISHING and FINISHED will be counted as the same 
status)

5.ClientServiceDelegate::getProxy(), we might need to handle 
YarnApplicationState.FINISHING, too.

6.ApplicationCLI::killApplication(). Here is a question mark. We can kill the 
AM when the RMApp is at Finishing state, since the AM did not really exist. 
Just for DS and MR, when the AM did the unregisterApplicationMaster, that means 
the application is finished, so at this time, if we send kill event, it is 
meaningless. Here, I just handle the YarnApplicationState.Finishing and 
Finished with the same way. 

> 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
>
>
> Today, we will transmit both RMAppState.FINISHING and RMAppState.FINISHED to 
> YarnApplicationState.FINISHED.



--
This message was sent by Atlassian JIRA
(v6.1#6144)

Reply via email to