[
https://issues.apache.org/jira/browse/HUDI-1240?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17281871#comment-17281871
]
Vinoth Chandar commented on HUDI-1240:
--------------------------------------
cc [~wenningd] does this make sense? This is the first work in the config
cleanup
> Simplify config classes
> -----------------------
>
> Key: HUDI-1240
> URL: https://issues.apache.org/jira/browse/HUDI-1240
> Project: Apache Hudi
> Issue Type: Improvement
> Components: Code Cleanup
> Reporter: sivabalan narayanan
> Priority: Major
>
> Cleanup config classes across the board with a {{HoodieConfig}} class in
> hudi-common, that wraps a single key,value, default, doc, fallback keys (old
> keys this points to. eg).
> the notion of fallback keys is very important, such that the user can still
> use the old config names and we should be able map it to how we have now
> renamed.
> i.e say there was `hoodie.a.b.c` and we think `hoodie.x.y.z` is a better
> name, then `hoodie.a.b.c` should be marked as deprecated (annotation or a
> boolean in HoodieConfig) and list `hoodie.x.y.z` as the fallback key. Users
> should be able to set `hoodie.a.b.c` for the next 3-6 months at least and
> internall we translate it to `hoodie.x.y.z`. None of our code should directly
> access on `hoodie.a.b.c` anymore.
> We can see the Apache Flink project fpr examples.
> Once this is done, first pass we should move all our existing configs to
> something like below.
> {code:java}
> public static final String EMBEDDED_TIMELINE_SERVER_ENABLED =
> "hoodie.embed.timeline.server";
> public static final String DEFAULT_EMBEDDED_TIMELINE_SERVER_ENABLED =
> "true";
> {code}
> becomes
> {code:java}
> public static HoodieConfig timelineServerEnabled = new HoodieConfig(
> "hoodie.embed.timeline.server",
> // property name
> Boolean.class, // type
> true, //default val
> Option.empty(), // fallback key
> false, //deprecated
>
> "Enables/Disables the timeline
> server on the write client.." //doc
> )
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)