[
https://issues.apache.org/jira/browse/FLINK-23252?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Roman Khachatryan updated FLINK-23252:
--------------------------------------
Description:
Recovery from savepoint already works:
* changelog off -> on: FLINK-23278
* changelog on -> off: directly calling
{{{}underlyingBackend.{}}}{{{}savepoint{}}}{{{}(){}}} (instead of
{{{}writer.persist(){}}})
For checkpoints, changelog on -> off doesn't work. Regular state backend will
receive materialized and non-aterialized state on recovery. To support it,
state changes have to be applied on recovery even if changelog backend is
disabled.
Another obstacle could be that wrapped backend state handles created during
materialization can refer to a fake checkpoint ID. This fake checkpoint ID
would then be passed to e.g. RocksIncrementalSnapshotStrategy on restore.
was:
Recovery from savepoint already works:
* changelog off -> on: FLINK-23278
* changelog on -> off: directly calling
{{underlyingBackend.}}{{savepoint}}{{()}} (instead of {{writer.persist()}})
For checkpoints, changelog on -> off doesn't work. Regular state backend will
receive materialized and non-aterialized state on recovery. To support it,
state changes have to be applied on recovery even if changelog backend is
disabled.
> Support recovery (from checkpoints) after disabling changelog backend
> ---------------------------------------------------------------------
>
> Key: FLINK-23252
> URL: https://issues.apache.org/jira/browse/FLINK-23252
> Project: Flink
> Issue Type: Sub-task
> Components: Runtime / State Backends
> Reporter: Roman Khachatryan
> Priority: Major
> Fix For: 1.15.0
>
>
> Recovery from savepoint already works:
> * changelog off -> on: FLINK-23278
> * changelog on -> off: directly calling
> {{{}underlyingBackend.{}}}{{{}savepoint{}}}{{{}(){}}} (instead of
> {{{}writer.persist(){}}})
>
> For checkpoints, changelog on -> off doesn't work. Regular state backend will
> receive materialized and non-aterialized state on recovery. To support it,
> state changes have to be applied on recovery even if changelog backend is
> disabled.
> Another obstacle could be that wrapped backend state handles created during
> materialization can refer to a fake checkpoint ID. This fake checkpoint ID
> would then be passed to e.g. RocksIncrementalSnapshotStrategy on restore.
--
This message was sent by Atlassian Jira
(v8.20.1#820001)