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

Karthik Kambatla commented on YARN-1618:
----------------------------------------

Thanks for the review, Jian. 

bq. I found New state on Recover event is possible to transition to 
FINAL_SAVING state. This should not happen. FINAL_SAVING state should be 
removed.
I suppose you are referring to the following transition. An RMAppEvent of type 
RECOVER is created only when recovering applications, which means the 
application is already in the store. For these applications, I am not sure if 
we should save the state of this "second" attempt or not. I don't think either 
approach would lead to store issues as reported here.
{code}
    .addTransition(RMAppState.NEW, EnumSet.of(RMAppState.SUBMITTED,
            RMAppState.ACCEPTED, RMAppState.FINISHED, RMAppState.FAILED,
            RMAppState.KILLED, RMAppState.FINAL_SAVING),
        RMAppEventType.RECOVER, new RMAppRecoveredTransition())
{code}

> Applications transition from NEW to FINAL_SAVING, and try to update 
> non-existing entries in the state-store
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: YARN-1618
>                 URL: https://issues.apache.org/jira/browse/YARN-1618
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: resourcemanager
>    Affects Versions: 2.2.0
>            Reporter: Karthik Kambatla
>            Assignee: Karthik Kambatla
>            Priority: Blocker
>         Attachments: yarn-1618-1.patch, yarn-1618-2.patch, yarn-1618-3.patch
>
>
> YARN-891 augments the RMStateStore to store information on completed 
> applications. In the process, it adds transitions from NEW to FINAL_SAVING. 
> This leads to the RM trying to update entries in the state-store that do not 
> exist. On ZKRMStateStore, this leads to the RM crashing. 
> Previous description:
> ZKRMStateStore fails to handle updates to znodes that don't exist. For 
> instance, this can happen when an app transitions from NEW to FINAL_SAVING. 
> In these cases, the store should create the missing znode and handle the 
> update.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to