[
https://issues.apache.org/jira/browse/FLINK-4445?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15615136#comment-15615136
]
ASF GitHub Bot commented on FLINK-4445:
---------------------------------------
GitHub user uce opened a pull request:
https://github.com/apache/flink/pull/2712
[FLINK-4445] Add option to ignore unmapped checkpoint state
When restoring from a checkpoint/savepoint, state for each operator has to
be restored. For savepoints, this means that the user cannot remove an operator
from her topology and still use the savepoint.
With this change, we will allow to ignore state that cannot be mapped back
to the job being restored. The default behaviour does not change.
## Changes
- I've removed the `allOrNothingState` flag as it was only effecting
non-partitioned operator state and never set to `true` anyways (except tests).
The flag controlled whether each non-partitioned operator state was restored.
- Moved the savepoint path from the `JobSnapshottingSettings` to the
`JobGraph`
- Added the `--ignoreUnmappedState` (short `-i`) flag to the run command:
`bin/flink run -s <savepointPath> -i ...`
I've tested this manually by triggering a savepoint for a job, adjusting
the job (removing an operator), and then trying to resume from the savepoint.
By default, restoring fails, but with the flag everything works.
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/uce/flink 4445-unmatched_state
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/flink/pull/2712.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 #2712
----
commit dc278c51b2bf1f580a6b4cb1670fb70ac871515f
Author: Ufuk Celebi <[email protected]>
Date: 2016-10-26T16:00:21Z
[FLINK-4445] [client] Add ignoreUnmappedState flag to CLI
Allow to specify whether a checkpoint restore should ignore
checkpoint state that it cannot map to the program. This is
exposed via the CLI in the run command:
bin/flink run -s <savepointPath> -i ...
Furthermore, the savepoint restore settings are moved out of
the snapshotting settings.
commit 57621d30dfc4360c786d557a1a00fb57e2ade372
Author: Ufuk Celebi <[email protected]>
Date: 2016-10-26T16:05:26Z
[FLINK-4445] [checkpointing] Add option to ignore unmapped checkpoint state
Allows to ignore checkpoint state that cannot be mapped to a job vertex when
restoring.
----
> Ignore unmatched state when restoring from savepoint
> ----------------------------------------------------
>
> Key: FLINK-4445
> URL: https://issues.apache.org/jira/browse/FLINK-4445
> Project: Flink
> Issue Type: Improvement
> Components: State Backends, Checkpointing
> Affects Versions: 1.1.1
> Reporter: Ufuk Celebi
> Assignee: Ufuk Celebi
>
> When currently submitting a job with a savepoint, we require that all state
> is matched to the new job. Many users have noted that this is overly strict.
> I would like to loosen this and allow savepoints to be restored without
> matching all state.
> The following options come to mind:
> (1) Keep the current behaviour, but add a flag to allow ignoring state when
> restoring, e.g. {{bin/flink -s <savepoint> --ignoreUnmatchedState}}. This
> would be non-API breaking.
> (2) Ignore unmatched state and continue. Additionally add a flag to be strict
> about checking the state, e.g. {{bin/flink -s <savepoint> --strict}}. This
> would be API-breaking as the default behaviour would change. Users might be
> confused by this because there is no straight forward way to notice that
> nothing has been restored.
> I'm not sure what's the best thing here. [~gyfora], [~aljoscha] What do you
> think?
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)