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

Jeff Zhang commented on YARN-2560:
----------------------------------

Check RMAppImpl & RMAppAttemptImpl and found that FinalApplicationStatus would 
been retrieved from the currentAttempt, while diagnostics would been retrieved 
from the RMApp which would be updated until it gets the AttemptFinishedEvent. 
This is the root cause that make the FinalApplicationStatus and diagnostics 
inconsistent sometimes. 

> Diagnostics is delayed to passed to ApplicationReport
> -----------------------------------------------------
>
>                 Key: YARN-2560
>                 URL: https://issues.apache.org/jira/browse/YARN-2560
>             Project: Hadoop YARN
>          Issue Type: Bug
>            Reporter: Jeff Zhang
>
> The diagnostics of Application may be delayed to pass to ApplicationReport. 
> Here's one example when ApplicationStatus has changed to FAILED, but the 
> diagnostics is still empty. And the next call of getApplicationReport could 
> get the diagnostics.
> {code}
> while(true) {
>         appReport = yarnClient.getApplicationReport(appId);
>         Thread.sleep(1000);
>         LOG.info("AppStatus:" + appReport.getFinalApplicationStatus());
>         LOG.info("Diagnostics:" + appReport.getDiagnostics());
>         ....
> }
> {code}
> *Output:*
> {code}
> AppStatus:FAILED
> Diagnostics: // empty
> // get diagnostics for the next getApplicationReport
> AppStatus:FAILED
> Diagnostics: // diagnostics info here
> {code}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to