test: add mixed-format schema evolution coverage#354
Open
QuakeWang wants to merge 1 commit into
Open
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Purpose
Linked issue: #258
Rust reader already had coverage for Java/Spark-generated full type boundary values, but schema evolution compatibility across mixed data file formats was not explicitly covered. In particular, existing fixtures did not verify that Parquet/ORC/Avro files written under different schema versions are read consistently by field id, with null-fill for added columns and casts for promoted types.
Brief change log
format_schema_evolution_add_columnSpark fixture with Parquet old-schema files and ORC/Avro new-schema files.format_schema_evolution_type_promotionSpark fixture with Parquet INT files and ORC/Avro BIGINT files.Tests
cargo test -p paimon-integration-tests test_read_format_schema_evolution -- --nocaptureAPI and Format
Documentation