@Override public GenericUDAFEvaluator getEvaluator(TypeInfo[] parameters) throws SemanticException { if (parameters.length < 1) { throw new UDFArgumentTypeException(parameters.length - 1, "One or more arguments are expected."); } for (int i = 0; i < parameters.length; i++) { ObjectInspector oi = TypeInfoUtils.getStandardJavaObjectInspectorFromTypeInfo(parameters[i]); if (!ObjectInspectorUtils.compareSupported(oi)) { throw new UDFArgumentTypeException(i, "Cannot support comparison of map<> type or complex type containing map<>."); } } return createEvaluator(); }
@Override public GenericUDAFEvaluator getEvaluator(TypeInfo[] parameters) throws SemanticException { if (parameters.length < 1) { throw new UDFArgumentTypeException(parameters.length - 1, "One or more arguments are expected."); } for (int i = 0; i < parameters.length; i++) { ObjectInspector oi = TypeInfoUtils.getStandardJavaObjectInspectorFromTypeInfo(parameters[i]); if (!ObjectInspectorUtils.compareSupported(oi)) { throw new UDFArgumentTypeException(i, "Cannot support comparison of map<> type or complex type containing map<>."); } } return createEvaluator(); }
@Override public GenericUDAFEvaluator getEvaluator(TypeInfo[] parameters) throws SemanticException { if (parameters.length < 1) { throw new UDFArgumentTypeException(parameters.length - 1, "One or more arguments are expected."); } for (int i = 0; i < parameters.length; i++) { ObjectInspector oi = TypeInfoUtils.getStandardJavaObjectInspectorFromTypeInfo(parameters[i]); if (!ObjectInspectorUtils.compareSupported(oi)) { throw new UDFArgumentTypeException(i, "Cannot support comparison of map<> type or complex type containing map<>."); } } return createEvaluator(); }