From 04cddea35ea1f8f5f5543600fdd03209e7b7327e Mon Sep 17 00:00:00 2001 From: Angerszhuuuu Date: Tue, 23 Nov 2021 15:41:57 +0800 Subject: [PATCH 1/2] Update HiveClientImpl.scala --- .../org/apache/spark/sql/hive/client/HiveClientImpl.scala | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala b/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala index a07ec165f3fcb..df150314da275 100644 --- a/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala +++ b/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala @@ -202,7 +202,8 @@ private[hive] class HiveClientImpl( private def getHive(conf: HiveConf): Hive = { try { - Hive.getWithoutRegisterFns(conf) + classOf[Hive].getMethod("getWithoutRegisterFns", classOf[HiveConf]) + .invoke(null, conf).asInstanceOf[Hive] } catch { // SPARK-37069: not all Hive versions have the above method (e.g., Hive 2.3.9 has it but // 2.3.8 don't), therefore here we fallback when encountering the exception. From bdedc32843da4ae3a110aafbca37ce40a1219433 Mon Sep 17 00:00:00 2001 From: Angerszhuuuu Date: Tue, 23 Nov 2021 16:12:02 +0800 Subject: [PATCH 2/2] Update HiveClientImpl.scala --- .../scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala b/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala index df150314da275..7637c3c7a3b96 100644 --- a/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala +++ b/sql/hive/src/main/scala/org/apache/spark/sql/hive/client/HiveClientImpl.scala @@ -207,7 +207,7 @@ private[hive] class HiveClientImpl( } catch { // SPARK-37069: not all Hive versions have the above method (e.g., Hive 2.3.9 has it but // 2.3.8 don't), therefore here we fallback when encountering the exception. - case _: NoSuchMethodError => + case _: NoSuchMethodException => Hive.get(conf) } }