trushev opened a new pull request, #5443:
URL: https://github.com/apache/hudi/pull/5443
## What is the purpose of the pull request
This PR adds support of reading by flink when comprehensive schema
evolution(RFC-33) enabled and there were some operations *add column*, *rename
column*, *change type of column*, *drop column*.
Supported mode: batch/cow/snapshot
## Brief change log
- Added new option to enable comprehensive schema evolution in flink
- Key changes are made inside `CopyOnWriteInputFormat`. Now, during the
opening, it calculates schema of file, if this schema differs from queried
schema, it creates cast map. After reading file, type conversion is performed
according to constructed map.
## Verify this pull request
This change added tests and can be verified as follows:
- Added unit test `TestCastMap` to verify that type conversion is correct
- Added integration test `ITTestReadWithSchemaEvo` to verify that table
with added, renamed, casted, dropped columns is read as expected. This test
uses `TestSpark3DDL` to prepare data, so it works only with `-P
scala-2.12,spark3.2`, since `TestSpark3DDL` works only with it.
## Committer checklist
- [ ] Has a corresponding JIRA in PR title & commit
- [ ] Commit message is descriptive of the change
- [ ] CI is green
- [ ] Necessary doc changes done or have another open PR
- [ ] For large changes, please consider breaking it into sub-tasks under
an umbrella JIRA.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]