Description
Apache Iceberg version
1.4.3
Query engine
Hive
Please describe the bug 🐞
In the iceberg documentation it could be seen that
"To enable Hive support globally for an application, set iceberg.engine.hive.enabled=true in its Hadoop configuration."
The value of iceberg.engine.hive.enabled must be true in order to enable hive support. However, it could still use Iceberg's hive support even if it is set as "iceberg.engine.hive.enabled" to false. If i understand correctly, the value "iceberg.engine.hive.enabled" is irrelevant.
Current scenario:
if it is a hive catalog we are setting engine.hive.enabled as true.
In
iceberg/hive-metastore/src/main/java/org/apache/iceberg/hive/HiveTableOperations.java
Line 486 in 01bc864
Even when we set ConfigProperties.ENGINE_HIVE_ENABLED to FALSE in Hadoop configuration, we are passing the ConfigProperties.ENGINE_HIVE_ENABLED as TRUE in the HiveIcebergMetaHook#commitCreateTable if it's of HiveCatalog type.
We are initially evaluating the 'engine.hive.enabled' value in HiveTableOperations#hiveEngineEnabled. In cases where it's a Hive catalog, this value is consistently 'True', rendering the 'iceberg.engine.hive.enabled' as unnecessary.
Activity