private void forward(Object[] keys, AggregationBuffer[] aggs) throws HiveException {
    if (forwardCache == null) {
      forwardCache = new Object[outputKeyLength + aggs.length];
    }

    System.arraycopy(keys, 0, forwardCache, 0, outputKeyLength);

    for (int i = 0; i < aggs.length; i++) {
      forwardCache[outputKeyLength + i] = aggregationEvaluators[i].evaluate(aggs[i]);
    }

    forward(forwardCache, outputObjInspector);
  }
Forward a record of keys and aggregation results.

@param keys
         The keys in the record
@throws HiveException
ql/src/java/org/apache/hadoop/hive/ql/exec/GroupByOperator.java