Commit ebefbb5f authored by Tom Lane's avatar Tom Lane

Fix failure with whole-row reference to a subquery.

Simple oversight in commit 1cb108ef ---
recursively examining a subquery output column is only sane if the
original Var refers to a single output column.  Found by Kevin Grittner.
parent 0b7e660d
...@@ -4505,6 +4505,12 @@ examine_simple_variable(PlannerInfo *root, Var *var, ...@@ -4505,6 +4505,12 @@ examine_simple_variable(PlannerInfo *root, Var *var,
RelOptInfo *rel; RelOptInfo *rel;
TargetEntry *ste; TargetEntry *ste;
/*
* Punt if it's a whole-row var rather than a plain column reference.
*/
if (var->varattno == InvalidAttrNumber)
return;
/* /*
* Punt if subquery uses set operations or GROUP BY, as these will * Punt if subquery uses set operations or GROUP BY, as these will
* mash underlying columns' stats beyond recognition. (Set ops are * mash underlying columns' stats beyond recognition. (Set ops are
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment