Details
-
New Feature
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
Description
Currently a client/session/scanner/etc needs to be configured via a series of setter methods. This can be cumbersome when plumbing configuration through to the the underlying client in an integration such as Spark/NiFi/Hive because a code change needs to be made every time a new configuration is added to Kudu to expose the configuration in the integration.
Instead we could expose an API to pass a Properties object with key/value pairs that are treated as Public API and will set the various configurations accordingly. Using that API a passthrough can be exposed from integration.
For an example, this could be used in Spark to expose all relevant configurations instead of the limited list of custom values seen here:
https://github.com/apache/kudu/blob/master/java/kudu-spark/src/main/scala/org/apache/kudu/spark/kudu/DefaultSource.scala#L58-L72