Currently we don't handle "Error"s  while trying to load java udfs from Hive. Although we catch the generic "Exception" in the code, sometimes class loaders throw "Error"s. which are fatal for catalog jvm and aborts the Catalog startup.
Generally Java doesn't encourage to catch errors (for ex: OOM). However while loading 3rd party jars during runtime, class loaders can throw LinkageError [1,2], which the catalog is expected to handle. For example, a jar might be present while compiling the udf, but might be missing during runtime, which throws NoClassDefError. These errors are generally a subset of LinkageErrors, which the catalog must gracefully handle.
Workaround: Drop/fix the offending functions from hive and restart catalog