mirror of
https://github.com/apache/impala.git
synced 2025-12-30 12:02:10 -05:00
This commit handles the case for a specific kind of corrupt function within the Hive Metastore in the following situation: A valid Hive SQL function gets created in HMS. This UDF is written in Java and must derive from the "UDF" class. After creating this function in Impala, we then replace the underlying jar file with a class that does NOT derive from the "UDF" class. In this scenario, catalogd should reject the function and still start up gracefully. Before this commit, catalogd wasn't coming up. The reason for this was because the Hive function FunctionUtils.getUDFClassType() has a dependency on UDAF and was throwing a LinkageError exception, so we need to include the UDAF class in the shaded jar. Change-Id: I54e7a1df6d018ba6cf5ecf32dc9946edf86e2112 Reviewed-on: http://gerrit.cloudera.org:8080/18927 Tested-by: Impala Public Jenkins <impala-public-jenkins@cloudera.com> Reviewed-by: Tamas Mate <tmater@apache.org>