apache / apache/hudi

Use standard builder pattern to refactor ConfigProperty

Open
#14,883 0 comments 0 reactions 0 assignees View on GitHub
area:code-quality area:config from-jira priority:medium type:improvement
Dominant language
Java
Stars
6.2k
Forks
2.5k
Avg merge
2d 8h
Merged PRs (30d)
111

Description

I notice that currently define a ConfigProperty object by non-standard builder pattern. Only `defaultValue` and `noDefaultValue` methods are executed in `PropertyBuilder`.

 

And when call `withAlternatives`, `sinceVersion`, `deprecatedAfter`, `withInferFunction` methods, will create another ConfigProperty object even that will be collected by jvm later.

 

So, is it necessary to minor-refactor this?

## JIRA info

- Link: https://issues.apache.org/jira/browse/HUDI-2544
- Type: Improvement
- Epic: https://issues.apache.org/jira/browse/HUDI-1239

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by locating ConfigProperty and PropertyBuilder, then inspect how defaultValue, noDefaultValue, withAlternatives, sinceVersion, deprecatedAfter, and withInferFunction construct objects. Compare those paths with the project's standard builder pattern. Done means the construction follows one consistent builder flow without discarded ConfigProperty instances; the issue names no tests to run.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
data-engineering
Issue type
Refactor
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.