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

Hitesh Shah commented on MAPREDUCE-3098:
----------------------------------------

bq. The ApplicationState returned to the client via ApplicationReport is really 
the state of the application as known to RM. 
True however what this actually represents is the state of the current 
attempt's AM. A submitted/running/completed AM only really implies the state of 
the AM and it would be better if we changed this from ApplicationState to 
ApplicationMasterState to avoid confusion as to what it really implies. From 
the perspective of a client, a client would prefer to assume that the 
application 'finish' state is whether my "job" completed successfully or not.  

Regd. the JobState, I agree. It is app-specific and has no relation to the 
state of the application but it should be exposed to the client as part of the 
report. The RM does not need to act on it today so a string should work. 
However, the question is whether using a flexible string/blob based approach is 
the way to go? I, in particular, do not have any preference over string/enum. 
Having an enum to define a set of end states which most applications will end 
up in might be a more stricter but clear approach. The diagnostics string could 
be used to provide the additional app specific info if needed. 

So my proposed changes are: 
Change ApplicationState to ApplicationMasterState to improve clarity on what 
the state implies.  
Add ApplicationFinishState to ApplicationReport as an enum. 

A client would monitoring AppMasterState for completion ( 
succeeded/failed/killed ) and if succeeded, look at the ApplicationFinishState 
to actually verify that the work was done successfully.

Comments? 


                
> Report Application status as well as ApplicationMaster status in 
> GetApplicationReportResponse 
> ----------------------------------------------------------------------------------------------
>
>                 Key: MAPREDUCE-3098
>                 URL: https://issues.apache.org/jira/browse/MAPREDUCE-3098
>             Project: Hadoop Map/Reduce
>          Issue Type: Sub-task
>          Components: mrv2
>    Affects Versions: 0.23.0
>            Reporter: Hitesh Shah
>            Assignee: Hitesh Shah
>            Priority: Blocker
>             Fix For: 0.23.0
>
>
> Currently, an application report received by the client from the RM/ASM for a 
> given application returns the status of the application master. It does not 
> return the status of the application i.e. whether that particular job 
> succeeded or failed. 
> The AM status would be one of FINISHED (SUCCEEDED should be renamed to 
> FINISHED as AM state does not indicate overall success/failure), FAILED or 
> KILLED. 
> The final state sent by the AM to the RM in the 
> FinishApplicationMasterRequest should be exposed to the client as 
> ApplicationState. 

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: 
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to