[jira] [Created] (FLINK-7623) Detecting whether an operator is restored doesn't work with chained state

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[jira] [Created] (FLINK-7623) Detecting whether an operator is restored doesn't work with chained state

Shang Yuanchun (Jira)
Aljoscha Krettek created FLINK-7623:
---------------------------------------

             Summary: Detecting whether an operator is restored doesn't work with chained state
                 Key: FLINK-7623
                 URL: https://issues.apache.org/jira/browse/FLINK-7623
             Project: Flink
          Issue Type: Bug
          Components: DataStream API, State Backends, Checkpointing
    Affects Versions: 1.3.2, 1.4.0
            Reporter: Aljoscha Krettek
            Priority: Blocker
             Fix For: 1.4.0, 1.3.3


Originally reported on the ML: https://lists.apache.org/thread.html/22a2cf83de3107aa81a03a921325a191c29df8aa8676798fcd497199@%3Cuser.flink.apache.org%3E

If we have a chain of operators where multiple of them have operator state, detection of the {{context.isRestored()}} flag (of {{CheckpointedFunction}}) does not work correctly. It's best exemplified using this minimal example where both the source and the flatMap have state:
{code}
final StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();

env
                .addSource(new MaSource()).uid("source-1")
                .flatMap(new MaFlatMap()).uid("flatMap-1");

env.execute("testing");
{code}

If I do a savepoint with these UIDs, then change "source-1" to "source-2" and restore from the savepoint {{context.isRestored()}} still reports {{true}} for the source.



--
This message was sent by Atlassian JIRA
(v6.4.14#64029)