-
Notifications
You must be signed in to change notification settings - Fork 2.4k
[HUDI-9638] infer and validate merging table configs for table version 9 #13615
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableConfig.java
Show resolved
Hide resolved
* Handle table config creation logic when creating a table for Table Version 9, | ||
* since it has some different logic from previous versions. | ||
*/ | ||
public static Map<String, String> inferMergingConfigsForVersion9(RecordMergeMode recordMergeMode, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
why public?
Also, lets avoid making static methods everywhere. if we can keep it private, lets go for it.
why make every method static
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is similar to inferCorrectMergingBehavior
.
hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableConfig.java
Outdated
Show resolved
Hide resolved
hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableConfig.java
Outdated
Show resolved
Hide resolved
hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableConfig.java
Outdated
Show resolved
Hide resolved
hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableConfig.java
Outdated
Show resolved
Hide resolved
hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableMetaClient.java
Show resolved
Hide resolved
hudi-common/src/main/java/org/apache/hudi/common/table/read/FileGroupReaderSchemaHandler.java
Outdated
Show resolved
Hide resolved
hudi-common/src/main/java/org/apache/hudi/common/table/HoodieTableConfig.java
Outdated
Show resolved
Hide resolved
b4b52de
to
42bfd23
Compare
Change Logs
During table creation in version 9, the merging properties should be also inferred and validated based on the given input.
We add this logic.
We also check payload class is updated during following data ingestion by comparing payload class with legacy payload class if the payload class is the builtin payload classes. Other merging properties are checked as well.
Impact
Then table configurations will be consistent during upgrade/downgrade, table creation, and data ingestion.
Risk level (write none, low medium or high below)
Medium.
Documentation Update
Describe any necessary documentation update if there is any new feature, config, or user-facing change. If not, put "none".
ticket number here and follow the instruction to make
changes to the website.
Contributor's checklist