You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "ASF GitHub Bot (JIRA)" <ji...@apache.org> on 2017/03/01 17:14:45 UTC

[jira] [Commented] (FLINK-5940) ZooKeeperCompletedCheckpointStore cannot handle broken state handles

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

ASF GitHub Bot commented on FLINK-5940:
---------------------------------------

GitHub user tillrohrmann opened a pull request:

    https://github.com/apache/flink/pull/3446

    [FLINK-5940] [checkpoint] Harden ZooKeeperCompletedCheckpointStore.recover method

    Before ZooKeeperCompletedCheckpointStore only tried to recover the latest completed
    checkpoint even though it might have read older checkpoint state handles from
    ZooKeeper. In order to deal with corrupted state handles, this commit changes the
    behaviour such that the completed checkpoint store adds all read retrievable
    state handles from ZooKeeper and upon request of the latest checkpoint it will
    return the latest completed checkpoint which could be retrieved from the state
    handles. Broken state handles are removed from the completed checkpoint store and
    ZooKeeper.


You can merge this pull request into a Git repository by running:

    $ git pull https://github.com/tillrohrmann/flink fixCheckpointRecovery

Alternatively you can review and apply these changes as the patch at:

    https://github.com/apache/flink/pull/3446.patch

To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:

    This closes #3446
    
----
commit e8fe16004562c012f15f2f1efc0ad45157fbb9dd
Author: Till Rohrmann <tr...@apache.org>
Date:   2017-03-01T13:08:35Z

    [FLINK-5940] [checkpoint] Harden ZooKeeperCompletedCheckpointStore.recover method
    
    The ZooKeeperCompletedCheckpointStore only tries to recover the latest completed
    checkpoint even though it might have read older checkpoint state handles from
    ZooKeeper. In order to deal with corrupted state handles, this commit changes the
    behaviour such that the completed checkpoint store adds all read retrievable
    state handles from ZooKeeper and upon request of the latest checkpoint it will
    return the latest completed checkpoint which could be retrieved from the state
    handles. Broken state handles are removed from the completed checkpoint store and
    ZooKeeper.

----


> ZooKeeperCompletedCheckpointStore cannot handle broken state handles
> --------------------------------------------------------------------
>
>                 Key: FLINK-5940
>                 URL: https://issues.apache.org/jira/browse/FLINK-5940
>             Project: Flink
>          Issue Type: Bug
>          Components: State Backends, Checkpointing
>    Affects Versions: 1.2.0, 1.1.4, 1.3.0
>            Reporter: Till Rohrmann
>            Assignee: Till Rohrmann
>
> The {{ZooKeeperCompletedCheckpointStore}} reads a set of {{RetrievableStateHandles}} from ZooKeeper upon recovery. It then tries to retrieve the {{CompletedCheckpoint}} from the latest state handle. If the retrieve operation fails, then the whole recovery of completed checkpoints fails even though the store might have read older state handles from ZooKeeper. 
> I propose to harden the behaviour by removing broken state handles and returning the first successfully retrieved {{CompletedCheckpoint}}.



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)