mAggregateExprs = aggregateNode.getAggregateExprs();
assert mAggregateExprs != null;
mPropagateFields = aggregateNode.getPropagateFields();
Expr windowExpr = aggregateNode.getWindowExpr();
assert windowExpr.isConstant();
try {
mWindowSpec = (WindowSpec) windowExpr.eval(new EmptyEventWrapper());
assert mWindowSpec.getRangeSpec().isConstant();
mTimeSpan = (TimeSpan) mWindowSpec.getRangeSpec().eval(new EmptyEventWrapper());
} catch (IOException ioe) {
// The only way this can be thrown is if the window expr isn't actually constant.
// This should not happen due to the assert above..