public ConstantExpression evalNow(PlanContext planContext, ExpressionNode node) {
if (node instanceof ConstantExpression)
return (ConstantExpression)node;
TPreparedExpression expr = assembleExpression(node, null, null);
TPreptimeValue preptimeValue = expr.evaluateConstant(planContext.getQueryContext());
if (preptimeValue == null)
throw new AkibanInternalException("required constant expression: " + expr);
ValueSource valueSource = preptimeValue.value();
if (valueSource == null)
throw new AkibanInternalException("required constant expression: " + expr);