String udfName = genericUDF.getUdfName(); if (!allowed.contains(genericUDF.getUdfName())) { return expr;
List<ExprNodeDesc> children, TypeInfo returnType) throws HiveException { if (isCustomUDF(genericUDF.getUdfName())) {
List<ExprNodeDesc> children, TypeInfo returnType) throws HiveException { if (isCustomUDF(genericUDF.getUdfName())) {
String udfName = genericUDF.getUdfName(); if (!allowed.contains(genericUDF.getUdfName())) { return expr;
if (LOG.isDebugEnabled()) { String err = "Processing " + fd.getExprString() + " " + fd.getGenericUDF().getUdfName() + " outputs "; for (Object child : nodeOutputs) { NodeInfoWrapper wrapper = (NodeInfoWrapper) child;
if (LOG.isDebugEnabled()) { String err = "Processing " + fd.getExprString() + " " + fd.getGenericUDF().getUdfName() + " outputs "; for (Object child : nodeOutputs) { NodeInfoWrapper wrapper = (NodeInfoWrapper) child;
String udfName = expr.getGenericUDF().getUdfName(); ExprNodeConstantDesc[] inConstantDescs = new ExprNodeConstantDesc[nodeOutputs.length - 1];
private void processingNullOperator(ExprNodeGenericFuncDesc expr, List<IndexSearchCondition> searchConditions, Object... nodeOutputs) { ExprNodeColumnDesc columnDesc = null; String[] fields = null; if (nodeOutputs[0] instanceof ExprNodeFieldDesc) { // rowKey field ExprNodeFieldDesc fieldDesc = (ExprNodeFieldDesc) nodeOutputs[0]; fields = ExprNodeDescUtils.extractFields(fieldDesc); ExprNodeDesc[] extracted = ExprNodeDescUtils.extractComparePair((ExprNodeDesc) nodeOutputs[0], new ExprNodeConstantDesc()); columnDesc = (ExprNodeColumnDesc) extracted[0]; } else if (nodeOutputs[0] instanceof ExprNodeGenericFuncDesc) { columnDesc = (ExprNodeColumnDesc) ((ExprNodeGenericFuncDesc) nodeOutputs[0]) .getChildren().get(0); } else { columnDesc = (ExprNodeColumnDesc) nodeOutputs[0]; } String udfName = expr.getGenericUDF().getUdfName(); searchConditions.add(new IndexSearchCondition(columnDesc, udfName, null, expr, fields, false)); }
private void processingNotNullOperator(ExprNodeGenericFuncDesc expr, List<IndexSearchCondition> searchConditions, Object... nodeOutputs) { ExprNodeColumnDesc columnDesc = null; String[] fields = null; if (nodeOutputs[0] instanceof ExprNodeFieldDesc) { // rowKey field ExprNodeFieldDesc fieldDesc = (ExprNodeFieldDesc) nodeOutputs[0]; fields = ExprNodeDescUtils.extractFields(fieldDesc); ExprNodeDesc[] extracted = ExprNodeDescUtils.extractComparePair((ExprNodeDesc) nodeOutputs[0], new ExprNodeConstantDesc()); columnDesc = (ExprNodeColumnDesc) extracted[0]; } else if (nodeOutputs[0] instanceof ExprNodeGenericFuncDesc) { columnDesc = (ExprNodeColumnDesc) ((ExprNodeGenericFuncDesc) nodeOutputs[0]) .getChildren().get(0); } else { columnDesc = (ExprNodeColumnDesc) nodeOutputs[0]; } String udfName = expr.getGenericUDF().getUdfName(); searchConditions.add(new IndexSearchCondition(columnDesc, udfName, null, expr, fields, true)); }
private void processingBetweenOperator(ExprNodeGenericFuncDesc expr, List<IndexSearchCondition> searchConditions, Object... nodeOutputs) { ExprNodeColumnDesc columnDesc = null; String[] fields = null; if (nodeOutputs[1] instanceof ExprNodeFieldDesc) { // rowKey field ExprNodeFieldDesc fieldDesc = (ExprNodeFieldDesc) nodeOutputs[1]; fields = ExprNodeDescUtils.extractFields(fieldDesc); ExprNodeDesc[] extracted = ExprNodeDescUtils.extractComparePair((ExprNodeDesc) nodeOutputs[1], (ExprNodeDesc) nodeOutputs[2]); columnDesc = (ExprNodeColumnDesc) extracted[0]; } else if (nodeOutputs[0] instanceof ExprNodeGenericFuncDesc) { columnDesc = (ExprNodeColumnDesc) ((ExprNodeGenericFuncDesc) nodeOutputs[1]) .getChildren().get(0); } else { columnDesc = (ExprNodeColumnDesc) nodeOutputs[1]; } String udfName = expr.getGenericUDF().getUdfName(); ExprNodeConstantDesc[] betweenConstants = new ExprNodeConstantDesc[]{ (ExprNodeConstantDesc) nodeOutputs[2], (ExprNodeConstantDesc) nodeOutputs[3]}; boolean isNot = (Boolean) ((ExprNodeConstantDesc) nodeOutputs[0]).getValue(); searchConditions.add(new IndexSearchCondition(columnDesc, udfName, betweenConstants, expr, fields, isNot)); }
String udfName = genericUDF.getUdfName(); if (!allowed.contains(genericUDF.getUdfName())) { return expr;
private Range getRange(GenericUDF genericUdf, ExprNodeDesc leftHandNode, Text constText) { Class<? extends CompareOp> opClz; try { opClz = predicateHandler.getCompareOpClass(genericUdf.getUdfName()); } catch (NoSuchCompareOpException e) { throw new IllegalArgumentException("Unhandled UDF class: " + genericUdf.getUdfName()); } if (leftHandNode instanceof ExprNodeConstantDesc) { return getConstantOpColumnRange(opClz, constText); } else if (leftHandNode instanceof ExprNodeColumnDesc) { return getColumnOpConstantRange(opClz, constText); } else { throw new IllegalStateException("Expected column or constant on LHS of expression"); } }
String udfName = genericUDF.getUdfName(); if (!allowed.contains(genericUDF.getUdfName())) { return expr;
opClz = predicateHandler.getCompareOpClass(genericUdf.getUdfName()); } catch (NoSuchCompareOpException e) { throw new IllegalArgumentException("Unhandled UDF class: " + genericUdf.getUdfName());