mirror of
https://github.com/postgres/postgres.git
synced 2025-12-10 00:06:45 -05:00
Don't call simplify_aggref with a NULL PlannerInfo
42473b3b3 added prosupport infrastructure to allow simplification of Aggrefs during constant-folding. In some cases the context->root that's given to eval_const_expressions_mutator() can be NULL. 42473b3b3 failed to take that into account, which could result in a crash. To fix, add a check and only call simplify_aggref() when the PlannerInfo is set. Author: David Rowley <dgrowleyml@gmail.com> Reported-by: Birler, Altan <altan.birler@tum.de> Discussion: https://postgr.es/m/132d4da23b844d5ab9e352d34096eab5@tum.de
This commit is contained in:
parent
c902bd57af
commit
5424f4da90
@ -2638,7 +2638,9 @@ eval_const_expressions_mutator(Node *node,
|
|||||||
}
|
}
|
||||||
case T_Aggref:
|
case T_Aggref:
|
||||||
node = ece_generic_processing(node);
|
node = ece_generic_processing(node);
|
||||||
return simplify_aggref((Aggref *) node, context);
|
if (context->root != NULL)
|
||||||
|
return simplify_aggref((Aggref *) node, context);
|
||||||
|
return node;
|
||||||
case T_OpExpr:
|
case T_OpExpr:
|
||||||
{
|
{
|
||||||
OpExpr *expr = (OpExpr *) node;
|
OpExpr *expr = (OpExpr *) node;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user