@Override public AggregationBuffer getNewAggregationBuffer() throws HiveException { return new Aggregation(outputDecimal64AbsMax); }
@Override public void reset(AggregationBuffer agg) throws HiveException { Aggregation myAgg = (Aggregation) agg; myAgg.reset(); }
private void iterateHasNullsSelectionWithAggregationSelection( VectorAggregationBufferRow[] aggregationBufferSets, int aggregateIndex, long[] values, int batchSize, int[] selection, boolean[] isNull) { for (int j=0; j < batchSize; ++j) { int i = selection[j]; if (!isNull[i]) { Aggregation myagg = getCurrentAggregationBuffer( aggregationBufferSets, aggregateIndex, j); myagg.sumValue(values[i]); } } }
myagg.sum = 0; myagg.sumValueNoNullCheck(vector[0]*batchSize);
private void iterateHasNullsWithAggregationSelection( VectorAggregationBufferRow[] aggregationBufferSets, int aggregateIndex, long[] values, int batchSize, boolean[] isNull) { for (int i=0; i < batchSize; ++i) { if (!isNull[i]) { Aggregation myagg = getCurrentAggregationBuffer( aggregationBufferSets, aggregateIndex, i); myagg.sumValue(values[i]); } } }
private void iterateHasNullsRepeatingWithAggregationSelection( VectorAggregationBufferRow[] aggregationBufferSets, int aggregateIndex, long value, int batchSize, boolean[] isNull) { if (isNull[0]) { return; } for (int i=0; i < batchSize; ++i) { Aggregation myagg = getCurrentAggregationBuffer( aggregationBufferSets, aggregateIndex, i); myagg.sumValue(value); } }
private void iterateSelectionHasNulls( Aggregation myagg, long[] vector, int batchSize, boolean[] isNull, int[] selected) { for (int j=0; j< batchSize; ++j) { int i = selected[j]; if (!isNull[i]) { long value = vector[i]; if (myagg.isNull) { myagg.isNull = false; myagg.sum = 0; } myagg.sumValueNoNullCheck(value); } } }
private void iterateNoSelectionHasNulls( Aggregation myagg, long[] vector, int batchSize, boolean[] isNull) { for(int i=0;i<batchSize;++i) { if (!isNull[i]) { long value = vector[i]; if (myagg.isNull) { myagg.sum = 0; myagg.isNull = false; } myagg.sumValueNoNullCheck(value); } } }
private void iterateNoNullsWithAggregationSelection( VectorAggregationBufferRow[] aggregationBufferSets, int aggregateIndex, long[] values, int batchSize) { for (int i=0; i < batchSize; ++i) { Aggregation myagg = getCurrentAggregationBuffer( aggregationBufferSets, aggregateIndex, i); myagg.sumValue(values[i]); } }
private void iterateNoNullsRepeatingWithAggregationSelection( VectorAggregationBufferRow[] aggregationBufferSets, int aggregateIndex, long value, int batchSize) { for (int i=0; i < batchSize; ++i) { Aggregation myagg = getCurrentAggregationBuffer( aggregationBufferSets, aggregateIndex, i); myagg.sumValue(value); } }
private void iterateSelectionNoNulls( Aggregation myagg, long[] vector, int batchSize, int[] selected) { if (myagg.isNull) { myagg.sum = 0; myagg.isNull = false; } for (int i=0; i< batchSize; ++i) { long value = vector[selected[i]]; myagg.sumValueNoNullCheck(value); } }
private void iterateNoNullsSelectionWithAggregationSelection( VectorAggregationBufferRow[] aggregationBufferSets, int aggregateIndex, long[] values, int[] selection, int batchSize) { for (int i=0; i < batchSize; ++i) { Aggregation myagg = getCurrentAggregationBuffer( aggregationBufferSets, aggregateIndex, i); myagg.sumValue(values[selection[i]]); } }
private void iterateNoSelectionNoNulls( Aggregation myagg, long[] vector, int batchSize) { if (myagg.isNull) { myagg.sum = 0; myagg.isNull = false; } for (int i=0;i<batchSize;++i) { long value = vector[i]; myagg.sumValueNoNullCheck(value); } }