Repository: spark
Updated Branches:
  refs/heads/branch-1.6 62ad81a14 -> c049fa4bd


[SPARK-11191][SQL][FOLLOW-UP] Cleans up unnecessary anonymous 
HiveFunctionRegistry

According to discussion in PR #9664, the anonymous `HiveFunctionRegistry` in 
`HiveContext` can be removed now.

Author: Cheng Lian <[email protected]>

Closes #9737 from liancheng/spark-11191.follow-up.

(cherry picked from commit fa13301ae440c4c9594280f236bcca11b62fdd29)
Signed-off-by: Cheng Lian <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/spark/repo
Commit: http://git-wip-us.apache.org/repos/asf/spark/commit/c049fa4b
Tree: http://git-wip-us.apache.org/repos/asf/spark/tree/c049fa4b
Diff: http://git-wip-us.apache.org/repos/asf/spark/diff/c049fa4b

Branch: refs/heads/branch-1.6
Commit: c049fa4bdc39206e8af393e24659a032768ab102
Parents: 62ad81a
Author: Cheng Lian <[email protected]>
Authored: Tue Nov 17 18:11:08 2015 +0800
Committer: Cheng Lian <[email protected]>
Committed: Wed Nov 18 00:27:49 2015 +0800

----------------------------------------------------------------------
 .../scala/org/apache/spark/sql/hive/HiveContext.scala     | 10 +---------
 .../main/scala/org/apache/spark/sql/hive/hiveUDFs.scala   |  7 +++++--
 2 files changed, 6 insertions(+), 11 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/spark/blob/c049fa4b/sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala
----------------------------------------------------------------------
diff --git 
a/sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala 
b/sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala
index 0c47379..2004f24 100644
--- a/sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala
+++ b/sql/hive/src/main/scala/org/apache/spark/sql/hive/HiveContext.scala
@@ -454,15 +454,7 @@ class HiveContext private[hive](
   // Note that HiveUDFs will be overridden by functions registered in this 
context.
   @transient
   override protected[sql] lazy val functionRegistry: FunctionRegistry =
-    new HiveFunctionRegistry(FunctionRegistry.builtin.copy(), this) {
-      override def lookupFunction(name: String, children: Seq[Expression]): 
Expression = {
-        // Hive Registry need current database to lookup function
-        // TODO: the current database of executionHive should be consistent 
with metadataHive
-        executionHive.withHiveState {
-          super.lookupFunction(name, children)
-        }
-      }
-    }
+    new HiveFunctionRegistry(FunctionRegistry.builtin.copy(), 
this.executionHive)
 
   // The Hive UDF current_database() is foldable, will be evaluated by 
optimizer, but the optimizer
   // can't access the SessionState of metadataHive.

http://git-wip-us.apache.org/repos/asf/spark/blob/c049fa4b/sql/hive/src/main/scala/org/apache/spark/sql/hive/hiveUDFs.scala
----------------------------------------------------------------------
diff --git a/sql/hive/src/main/scala/org/apache/spark/sql/hive/hiveUDFs.scala 
b/sql/hive/src/main/scala/org/apache/spark/sql/hive/hiveUDFs.scala
index e6fe2ad..2e8c026 100644
--- a/sql/hive/src/main/scala/org/apache/spark/sql/hive/hiveUDFs.scala
+++ b/sql/hive/src/main/scala/org/apache/spark/sql/hive/hiveUDFs.scala
@@ -43,16 +43,19 @@ import org.apache.spark.sql.catalyst.plans.logical._
 import org.apache.spark.sql.catalyst.rules.Rule
 import org.apache.spark.sql.catalyst.util.ArrayData
 import org.apache.spark.sql.hive.HiveShim._
+import org.apache.spark.sql.hive.client.ClientWrapper
 import org.apache.spark.sql.types._
 
 
 private[hive] class HiveFunctionRegistry(
     underlying: analysis.FunctionRegistry,
-    hiveContext: HiveContext)
+    executionHive: ClientWrapper)
   extends analysis.FunctionRegistry with HiveInspectors {
 
   def getFunctionInfo(name: String): FunctionInfo = {
-    hiveContext.executionHive.withHiveState {
+    // Hive Registry need current database to lookup function
+    // TODO: the current database of executionHive should be consistent with 
metadataHive
+    executionHive.withHiveState {
       FunctionRegistry.getFunctionInfo(name)
     }
   }


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to