You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@flink.apache.org by "Aljoscha Krettek (JIRA)" <ji...@apache.org> on 2017/10/23 09:01:16 UTC

[jira] [Commented] (FLINK-7901) Detecting whether an operator is restored doesn't work with chained state (Flink 1.3)

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

Aljoscha Krettek commented on FLINK-7901:
-----------------------------------------

I created a clone because FLINK-7623 is already fixed for 1.4 but needs a slightly more involved backport for 1.3.3.

> Detecting whether an operator is restored doesn't work with chained state (Flink 1.3)
> -------------------------------------------------------------------------------------
>
>                 Key: FLINK-7901
>                 URL: https://issues.apache.org/jira/browse/FLINK-7901
>             Project: Flink
>          Issue Type: Bug
>          Components: DataStream API, State Backends, Checkpointing
>    Affects Versions: 1.4.0, 1.3.2
>            Reporter: Aljoscha Krettek
>            Assignee: Piotr Nowojski
>            Priority: Blocker
>             Fix For: 1.3.3
>
>         Attachments: StreamingJob.java
>
>
> 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)