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

Roman Khachatryan commented on FLINK-26079:
-------------------------------------------

Yes, I also think (3) is the easiest validation option.

It can be implemented by checking handles types while 
[building|https://github.com/apache/flink/blob/3aa267bf511287e39b0a9d781b9aaf38843e1e91/flink-state-backends/flink-statebackend-changelog/src/main/java/org/apache/flink/state/changelog/ChangelogStateBackend.java#L271]
 the backend. Only  ChangelogStateBackendHandle and SavepointKeyedStateHandle 
should be allowed.

 

With such a check, the following will be allowed:
 # changelog checkpoint + CLAIM/LEGACY
 # canonical savepoint (any restore mode)

The following disallowed:
 # non-changelog checkpoint + CLAIM
 # non-changelog checkpoint + LEGACY
 # native savepoint
 # NO_CLAIM - by an existing check in StreamTask

Unnecessarily disallowing (2) "non-changelog checkpoint + LEGACY" is the 
downside of this approach.


> Disallow combination of Changelog backend with CLAIM restore mode when 
> recovering from non-changelog checkpoint
> ---------------------------------------------------------------------------------------------------------------
>
>                 Key: FLINK-26079
>                 URL: https://issues.apache.org/jira/browse/FLINK-26079
>             Project: Flink
>          Issue Type: Bug
>          Components: Runtime / Configuration, Runtime / State Backends
>            Reporter: Roman Khachatryan
>            Assignee: Roman Khachatryan
>            Priority: Blocker
>             Fix For: 1.15.0
>
>
> Extracted from FLINK-25872.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to