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)

Reply via email to