[
https://issues.apache.org/jira/browse/FLINK-40299?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Weiqing Yang reassigned FLINK-40299:
------------------------------------
Assignee: Weiqing Yang
> Add end-to-end state migration tests for RowData schema evolution
> -----------------------------------------------------------------
>
> Key: FLINK-40299
> URL: https://issues.apache.org/jira/browse/FLINK-40299
> Project: Flink
> Issue Type: Sub-task
> Components: Table SQL / Runtime
> Reporter: Weiqing Yang
> Assignee: Weiqing Yang
> Priority: Major
>
> Adds coverage that exercises the full restore path on RocksDB rather than the
> serializer snapshot in isolation, in the module that sees both the state
> backend and RowData.
> Cases:
> * A nullable field added to ValueState<RowData>, option enabled: state
> restores, existing values intact, the new field null.
> * The same change with the option disabled: restore is rejected.
> * The same change with state TTL enabled: values migrate correctly and TTL
> timestamps are preserved.
> * State shaped like an interval join buffer (RowData below List and Tuple
> serializers): restore is rejected rather than migrated.
> The last two matter most. TTL is the one case where a RowData serializer is
> both opted in and wrapped in a composite, so its correctness rests on the
> TTL-aware migration path rather than on structure. The interval-join case is
> the fail-closed guarantee: migration is not propagated into nested
> serializers by composite snapshots, so that shape must be rejected rather
> than silently mis-migrated.
> Depends on FLINK-40298.
> 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)