Weiqing Yang created FLINK-40299:
------------------------------------
Summary: 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
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)