Internal Jenkins has submitted this change and it was merged. Change subject: IMPALA-3820: Handle linkage errors while loading Java UDFs in Catalog ......................................................................
IMPALA-3820: Handle linkage errors while loading Java UDFs in Catalog Currently Catalog aborts at startup if the class loader loading Java UDFs throws a LinkageError (e.g., NoClassDefError). The code has been designed to catch a generic "Exception" and ignore any incompatible or erroneous UDFs but it can't handle any "Error"s. Java generally doesn't encourage to handle all types of "Error"s, however given the Catalog tries to load thirdparty udfs, it is possible that there might be missing dependencies that the Catalog is expected to handle. Testing: Added an e-e test that loads a corrupt Java UDF from Hive and restarts Catalog to make sure its up and the function count tallies. Change-Id: I1109614f1617caa9bb27e8c151e902aae71a6b41 Reviewed-on: http://gerrit.cloudera.org:8080/4092 Reviewed-by: Bharath Vissapragada <[email protected]> Tested-by: Internal Jenkins --- M fe/src/main/java/com/cloudera/impala/catalog/CatalogServiceCatalog.java M fe/src/main/java/com/cloudera/impala/hive/executor/UdfExecutor.java M tests/custom_cluster/test_permanent_udfs.py M tests/test-hive-udfs/pom.xml A tests/test-hive-udfs/src/main/java/com/cloudera/impala/UnresolvedUdf.java 5 files changed, 77 insertions(+), 2 deletions(-) Approvals: Bharath Vissapragada: Looks good to me, approved Internal Jenkins: Verified -- To view, visit http://gerrit.cloudera.org:8080/4092 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-MessageType: merged Gerrit-Change-Id: I1109614f1617caa9bb27e8c151e902aae71a6b41 Gerrit-PatchSet: 2 Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-Owner: Bharath Vissapragada <[email protected]> Gerrit-Reviewer: Bharath Vissapragada <[email protected]> Gerrit-Reviewer: Internal Jenkins
