public void unregisterFunction(String functionName) throws HiveException {
    lock.lock();
    try {
      functionName = functionName.toLowerCase();
      FunctionInfo fi = mFunctions.get(functionName);
      if (fi != null) {
        if (fi.isBuiltIn()) {
          throw new HiveException(ErrorMsg.DROP_NATIVE_FUNCTION.getMsg(functionName));
        }
        mFunctions.remove(functionName);
        fi.discarded();
        if (fi.isPersistent()) {
          removePersistentFunctionUnderLock(fi);
        }
      }
    } finally {
      lock.unlock();
    }
  }
Get the GenericUDAF evaluator for the name and argumentClasses.

@param name         the name of the UDAF
@param argumentOIs
@param isDistinct
@param isAllColumns
@return The UDAF evaluator
ql/src/java/org/apache/hadoop/hive/ql/exec/Registry.java