Skip to content
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

[HUDI-5589] Fix Hudi config inference #7713

Merged
merged 3 commits into from
Jan 20, 2023

Conversation

yihua
Copy link
Contributor

@yihua yihua commented Jan 20, 2023

Change Logs

For a config defined by ConfigProperty with no default value set, e.g., DynamoDbBasedLockConfig.DYNAMODB_LOCK_PARTITION_KEY, even if the inference function is set with .withInferFunction() in HoodieConfig, the inference function is not invoked in HoodieConfig to generate the config value. This PR fixes the issue so that such a config can still get the inferred value without a default value set.

This PR also adds tests to verify the config inference.

Impact

Correct the config inference. This fixes these two existing configs: hoodie.write.lock.dynamodb.partition_key (DynamoDbBasedLockConfig.DYNAMODB_LOCK_PARTITION_KEY) and hoodie.write.lock.zookeeper.lock_key (HoodieLockConfig.ZK_LOCK_KEY). This also makes the proper inference for hoodie.write.concurrency.early.conflict.detection.strategy in #6133.

Risk level

low

Documentation Update

N/A

Contributor's checklist

  • Read through contributor's guide
  • Change Logs and Impact were stated clearly
  • Adequate tests were added if applicable
  • CI passed

@apache apache deleted a comment from hudi-bot Jan 20, 2023
@hudi-bot
Copy link

CI report:

Bot commands @hudi-bot supports the following commands:
  • @hudi-bot run azure re-run the last Azure build

@yihua yihua merged commit 6f4c60e into apache:master Jan 20, 2023
fengjian428 pushed a commit to fengjian428/hudi that referenced this pull request Jan 31, 2023
For a config defined by `ConfigProperty` with no default value set, even if the inference function is set with `.withInferFunction()` in `HoodieConfig`, the inference function is not invoked in `HoodieConfig` to generate the config value. This commit fixes the issue so that such a config can still get the inferred value without a default value set.
nsivabalan pushed a commit to nsivabalan/hudi that referenced this pull request Mar 22, 2023
For a config defined by `ConfigProperty` with no default value set, even if the inference function is set with `.withInferFunction()` in `HoodieConfig`, the inference function is not invoked in `HoodieConfig` to generate the config value. This commit fixes the issue so that such a config can still get the inferred value without a default value set.
fengjian428 pushed a commit to fengjian428/hudi that referenced this pull request Apr 5, 2023
For a config defined by `ConfigProperty` with no default value set, even if the inference function is set with `.withInferFunction()` in `HoodieConfig`, the inference function is not invoked in `HoodieConfig` to generate the config value. This commit fixes the issue so that such a config can still get the inferred value without a default value set.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Archived in project
Development

Successfully merging this pull request may close these issues.

3 participants