Details
-
Bug
-
Status: Closed
-
Critical
-
Resolution: Fixed
-
1.12.0
Description
The CheckpointConfig.setPreferCheckpointForRecovery allows to configure whether Flink prefers checkpoints for recovery if the CompletedCheckpointStore contains savepoints and checkpoints. This is problematic because due to this feature, Flink might prefer older checkpoints over newer savepoints for recovery. Since some components expect that the always the latest checkpoint/savepoint is used (e.g. the SourceCoordinator), it breaks assumptions and can lead to SourceSplits which are not read. This effectively means that the system loses data. Similarly, this behaviour can cause that exactly once sinks might output results multiple times which violates the processing guarantees. Hence, I believe that we should remove this setting because it changes Flink's behaviour in some very significant way potentially w/o the user noticing.
Attachments
Issue Links
- is blocked by
-
FLINK-20441 Deprecate CheckpointConfig.setPreferCheckpointForRecovery
- Closed
- is caused by
-
FLINK-11159 Allow configuration whether to fall back to savepoints for restore
- Closed
- is related to
-
FLINK-20290 Duplicated output in FileSource continuous ITCase with TM failover
- Closed
- links to