Steve Carlin has uploaded this change for review. ( http://gerrit.cloudera.org:8080/18020
Change subject: IMPALA-10997: Refactor Java Hive UDF code. ...................................................................... IMPALA-10997: Refactor Java Hive UDF code. In its current form, Impala supports Java UDFs that are derived from the UDF.class. The UDF.class is legacy code and Hive now supports implementation off of the GenericUDF.class. This rewrite will allow for easier extension to support GenericUDFs. Among added classes: UdfExecutor: The entry point class which is directly accessed by the backend. This is a wrapper class to the UDF class that will handle the evaluation of rows. HiveUdfExecutor: Abstract base class that contains code that is common to the legacy UDF.class and the GenericUDF.class when it is eventually created. HiveUdfExecutorLegacy: Implementation of the code that is UDF.class specific. HiveJavaClass: Class responsible for using reflection to instantiate the UDF class HiveJavaFunction: Interface for retrieving objects pertaining to the UDF function class. HiveLegacyJavaFunction: Class representing the metadata for the legacy UDF class. Change-Id: Idc9572e15fbed1876412159b99dddd3fb4d37174 --- M fe/src/main/java/org/apache/impala/analysis/CreateUdfStmt.java M fe/src/main/java/org/apache/impala/catalog/CatalogServiceCatalog.java M fe/src/main/java/org/apache/impala/catalog/ScalarFunction.java A fe/src/main/java/org/apache/impala/hive/executor/HiveJavaClass.java A fe/src/main/java/org/apache/impala/hive/executor/HiveJavaFunction.java A fe/src/main/java/org/apache/impala/hive/executor/HiveJavaFunctionFactory.java A fe/src/main/java/org/apache/impala/hive/executor/HiveLegacyJavaFunction.java A fe/src/main/java/org/apache/impala/hive/executor/HiveUdfExecutor.java A fe/src/main/java/org/apache/impala/hive/executor/HiveUdfExecutorLegacy.java A fe/src/main/java/org/apache/impala/hive/executor/JavaUdfDataType.java M fe/src/main/java/org/apache/impala/hive/executor/UdfExecutor.java M fe/src/main/java/org/apache/impala/service/CatalogOpExecutor.java M fe/src/main/java/org/apache/impala/util/FunctionUtils.java 13 files changed, 1,371 insertions(+), 752 deletions(-) git pull ssh://gerrit.cloudera.org:29418/Impala-ASF refs/changes/20/18020/1 -- To view, visit http://gerrit.cloudera.org:8080/18020 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: Idc9572e15fbed1876412159b99dddd3fb4d37174 Gerrit-Change-Number: 18020 Gerrit-PatchSet: 1 Gerrit-Owner: Steve Carlin <[email protected]>
