voonhous commented on code in PR #18837:
URL: https://github.com/apache/hudi/pull/18837#discussion_r3340327830
##########
hudi-trino-plugin/src/main/java/io/trino/plugin/hudi/HudiConfig.java:
##########
@@ -55,7 +55,7 @@ public class HudiConfig
private boolean queryPartitionFilterRequired;
private boolean ignoreAbsentPartitions;
private Duration dynamicFilteringWaitTimeout = new Duration(1, SECONDS);
- private boolean resolveColumnNameCasingEnabled = true;
+ private boolean resolveColumnNameCasingEnabled;
Review Comment:
Intentional. The default was `true` in the original migration (4e987fe) and
was deliberately flipped to `false` in e2081d9 ("test: disable resolve column
name casing by default"), which also added
`SessionBuilder.withResolveColumnNameCasingEnabled(...)` so tests that need it
opt in explicitly.
Rationale: when enabled, `HudiMetadata` eagerly loads the Hudi table's Avro
schema to reconcile catalog-vs-table column casing, costing extra schema reads
/ file operations. Most Hudi tables use lowercase (Hive-compatible) column
names where that reconciliation is unnecessary, so `false`-by-default avoids
the overhead; mixed-case tables opt in via
`hudi.table.resolve-column-name-casing.enabled=true`.
On the upgrade concern: this is a brand-new connector being introduced to
the Hudi repo under RFC-105 - there is no prior Hudi-shipped Trino connector to
upgrade from, so no existing user silently changes behavior. Documenting the
property + default belongs in the connector docs on the Hudi website, which we
will cover there rather than in this build/setup README.
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]