[ https://issues.apache.org/jira/browse/MAPREDUCE-5956?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14055396#comment-14055396 ]
Hitesh Shah commented on MAPREDUCE-5956: ---------------------------------------- [~vinodkv] By definition, if an AM calls unregister, it is telling the RM that this is my last attempt and the app should not be retried. Are now you saying that all attempts should now call unregisterAttempt() which will tell the app whether it is the final attempt and should call a final unregister()? If not, I think something else is needed as an AM will only call unregister() on an error if it thinks it is the last attempt. > MapReduce AM should not use maxAttempts to determine if this is the last retry > ------------------------------------------------------------------------------ > > Key: MAPREDUCE-5956 > URL: https://issues.apache.org/jira/browse/MAPREDUCE-5956 > Project: Hadoop Map/Reduce > Issue Type: Sub-task > Components: applicationmaster, mrv2 > Reporter: Vinod Kumar Vavilapalli > Assignee: Wangda Tan > Priority: Blocker > > Found this while reviewing YARN-2074. The problem is that after YARN-2074, we > don't count AM preemption towards AM failures on RM side, but MapReduce AM > itself checks the attempt id against the max-attempt count to determine if > this is the last attempt. > {code} > public void computeIsLastAMRetry() { > isLastAMRetry = appAttemptID.getAttemptId() >= maxAppAttempts; > } > {code} > This causes issues w.r.t deletion of staging directory etc.. -- This message was sent by Atlassian JIRA (v6.2#6252)