EvalContext [] tmpTuple = tupleSlots.get(keyTuple);
for(int i = 0; i < measureList.length; i++) {
evals[measureList[i]].eval(tmpTuple[measureList[i]], inSchema, tuple);
}
} else { // if the key occurs firstly
EvalContext evalCtx [] = new EvalContext[targetLength];
for(int i = 0; i < targetLength; i++) {
evalCtx[i] = evals[i].newContext();
evals[i].eval(evalCtx[i], inSchema, tuple);
}
tupleSlots.put(keyTuple, evalCtx);