[
https://issues.apache.org/jira/browse/FLINK-40297?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
ASF GitHub Bot updated FLINK-40297:
-----------------------------------
Labels: pull-request-available (was: )
> Route TTL-aware value migration through the TypeSerializerSnapshot migrate
> hook
> -------------------------------------------------------------------------------
>
> Key: FLINK-40297
> URL: https://issues.apache.org/jira/browse/FLINK-40297
> Project: Flink
> Issue Type: Sub-task
> Components: Runtime / State Backends
> Reporter: Weiqing Yang
> Priority: Major
> Labels: pull-request-available
>
> TtlAwareSerializer.migrateValueFromPriorSerializer is the single entry point
> through which the RocksDB state backend migrates state values on restore:
> AbstractRocksDBState, RocksDBListState and RocksDBMapState all call it. Today
> it deserializes with the prior serializer and re-serializes with the new one,
> with no opportunity for a serializer to adapt the value.
> This changes it to unwrap the prior value to its bare (non-TTL) form, pass it
> through migrate on the inner value serializer's snapshot, and re-wrap it,
> preserving the prior TTL timestamp when the prior value carried one.
> Behavior is unchanged: migrate defaults to identity, so every existing state
> type migrates exactly as before. The change makes the hook reachable so that
> a serializer overriding it takes effect.
> Depends on FLINK-40296.
> FLIP-527:
> https://cwiki.apache.org/confluence/spaces/FLINK/pages/353601981/FLIP-527+State+Schema+Evolution+for+RowData
--
This message was sent by Atlassian Jira
(v8.20.10#820010)