diff options
Diffstat (limited to 'src/backend/executor')
-rw-r--r-- | src/backend/executor/execQual.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/src/backend/executor/execQual.c b/src/backend/executor/execQual.c index 778b6c1552f..4df4a9b0f7d 100644 --- a/src/backend/executor/execQual.c +++ b/src/backend/executor/execQual.c @@ -4515,6 +4515,14 @@ ExecInitExpr(Expr *node, PlanState *parent) if (parent && IsA(parent, AggState)) { AggState *aggstate = (AggState *) parent; + Aggref *aggref = (Aggref *) node; + + if (aggstate->finalizeAggs && + aggref->aggoutputtype != aggref->aggtype) + { + /* planner messed up */ + elog(ERROR, "Aggref aggoutputtype must match aggtype"); + } aggstate->aggs = lcons(astate, aggstate->aggs); aggstate->numaggs++; |