public static ObjectInspector.Category aggregationOutputCategory(VectorAggregateExpression vectorAggrExpr) { ObjectInspector outputObjInspector = vectorAggrExpr.getOutputObjectInspector(); return outputObjInspector.getCategory(); }
@Override public String toString() { StringBuilder sb = new StringBuilder(); sb.append(this.getClass().getSimpleName()); VectorExpression inputExpression = inputExpression(); if (inputExpression != null) { sb.append("("); sb.append(inputExpression.toString()); sb.append(") -> "); } else { sb.append("(*) -> "); } ObjectInspector outputObjectInspector = getOutputObjectInspector(); sb.append(outputObjectInspector.getTypeName()); return sb.toString(); } }
objectInspectors.add(aggregators[i].getOutputObjectInspector());
private boolean aggregatorsOutputIsPrimitive(AggregationDesc aggDesc, boolean isReduce) { VectorizationContext vc = new ValidatorVectorizationContext(); VectorAggregateExpression vectorAggrExpr; try { vectorAggrExpr = vc.getAggregatorExpression(aggDesc, isReduce); } catch (Exception e) { // We should have already attempted to vectorize in validateAggregationDesc. LOG.info("Vectorization of aggreation should have succeeded ", e); return false; } ObjectInspector outputObjInspector = vectorAggrExpr.getOutputObjectInspector(); if (outputObjInspector.getCategory() == ObjectInspector.Category.PRIMITIVE) { return true; } return false; }
objectInspectors.add(aggregators[i].getOutputObjectInspector());