Csaba Ringhofer has submitted this change and it was merged. ( 
http://gerrit.cloudera.org:8080/18207 )

Change subject: IMPALA-11109: Catch class loading error for UDFs.
......................................................................

IMPALA-11109: Catch class loading error for UDFs.

Fixes regression caused by IMPALA-10997.

If a UDF fails to load, an exception needs to be caught
and logged or else catalogd will not start up. The
method HiveLegacyJavaFunction.extract() will catch any hidden
exception thrown, and rethrow it as a CatalogException. The caller
already handles the CatalogException and logs the message
appropriately. The specific "hidden" exception thrown in our
regression tests was a "ClassNotFoundException", but in case
there are other exceptions that are thrown, we catch the generic
"Throwable" exception because the "extract" method should not
prevent the server from coming up.

Change-Id: I16813209cd4c2367c45e569c2aac13eff7ce2dbf
Reviewed-on: http://gerrit.cloudera.org:8080/18207
Tested-by: Impala Public Jenkins <[email protected]>
Reviewed-by: Csaba Ringhofer <[email protected]>
---
M fe/src/main/java/org/apache/impala/hive/executor/HiveLegacyJavaFunction.java
M 
fe/src/test/java/org/apache/impala/hive/executor/HiveLegacyJavaFunctionTest.java
2 files changed, 23 insertions(+), 14 deletions(-)

Approvals:
  Impala Public Jenkins: Verified
  Csaba Ringhofer: Looks good to me, approved

--
To view, visit http://gerrit.cloudera.org:8080/18207
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-Project: Impala-ASF
Gerrit-Branch: master
Gerrit-MessageType: merged
Gerrit-Change-Id: I16813209cd4c2367c45e569c2aac13eff7ce2dbf
Gerrit-Change-Number: 18207
Gerrit-PatchSet: 9
Gerrit-Owner: Steve Carlin <[email protected]>
Gerrit-Reviewer: Csaba Ringhofer <[email protected]>
Gerrit-Reviewer: Daniel Becker <[email protected]>
Gerrit-Reviewer: Impala Public Jenkins <[email protected]>
Gerrit-Reviewer: Joe McDonnell <[email protected]>
Gerrit-Reviewer: Steve Carlin <[email protected]>

Reply via email to