yabola opened a new issue, #14082: URL: https://github.com/apache/iceberg/issues/14082
### Feature Request / Improvement Spark connects to Hive3 through a isolate classloader to load the Hive3 related jars ( `spark.sql.hive.metastore.jars` for Hive3 jars). However, this only works in `HiveExternalCatalog` and not works in iceberg, because spark will restore the classloader for the thread(see https://github.com/apache/spark/blob/8c422f974a68e60c4ab2c2ced25264f42af8380d/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala#L274-L300). The JVM of Spark is always the implementation class of hive2, so we can't use hive3 in Iceberg with Spark. Although the Hive2 client is compatible with Hive3, but some features are missing, such as the ability of Hive3 to use catalog names to isolate database and tables (see hive `metastore.catalog.default`). We need add one way like spark using isolate classloader to load hive3 jars. ### Query engine None ### Willingness to contribute - [x] I can contribute this improvement/feature independently - [ ] I would be willing to contribute this improvement/feature with guidance from the Iceberg community - [ ] I cannot contribute this improvement/feature at this time -- 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] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
