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-7669] Move config classes and utils to proper places #11095

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

yihua
Copy link
Contributor

@yihua yihua commented Apr 25, 2024

Change Logs

This PR moves config classes and utils to the proper places:

  • Moves ConfigProperty, EnumDescription, EnumFieldDescription, HoodieConfig, TypedProperties from hudi-common to hudi-io module so that classes in hudi-io and hudi-hadoop-common modules can use config-related logic.
  • Moves DFSPropertiesConfiguration class from hudi-common to hudi-hadoop-common module.
  • Moves HoodieNotSupportedException class used by config utils from hudi-common to hudi-io module.
  • Moves basic config utils from ConfigUtils in hudi-common module to ConfigUtils in hudi-io module (tests are moved to TestConfigUtils).
  • Moves Hadoop-related config utils from ConfigUtils to HadoopConfigUtils in hudi-hadoop-common module (tests are moved to TestHadoopConfigUtils).
  • Moves Hudi-specific config utils from ConfigUtils to HoodieConfigUtils in hudi-common module.

Impact

Code refactoring for reuse and better organization.

Risk level

none

Documentation Update

none

Contributor's checklist

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

@github-actions github-actions bot added the size:L PR with lines of changes in (300, 1000] label Apr 25, 2024
@yihua yihua requested a review from danny0405 April 25, 2024 22:14
@danny0405
Copy link
Contributor

Moves ConfigProperty, EnumDescription, EnumFieldDescription, HoodieConfig, TypedProperties from hudi-common to hudi-io module so that classes in hudi-io and hudi-hadoop-common modules can use config-related logic

It may solves the dependency issue, but from the first sight, these classes does not belong to hudi-io IMO, should we have a separate hudi-config module or hudi-api module (that we can put all the code API or interfaces in hudi core).

@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
Copy link
Contributor Author

yihua commented Apr 26, 2024

Moves ConfigProperty, EnumDescription, EnumFieldDescription, HoodieConfig, TypedProperties from hudi-common to hudi-io module so that classes in hudi-io and hudi-hadoop-common modules can use config-related logic

It may solves the dependency issue, but from the first sight, these classes does not belong to hudi-io IMO, should we have a separate hudi-config module or hudi-api module (that we can put all the code API or interfaces in hudi core).

Makes sense. Let me think about this and put up separate PRs.

@danny0405
Copy link
Contributor

Makes sense. Let me think about this and put up separate PRs.

Sure, please update the description when you finished the change so the reviewer can get a briefing of the changes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
code-refactor size:L PR with lines of changes in (300, 1000]
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants