Fix failure with whole-row reference to a subquery.

Simple oversight in commit 1cb108efb0 ---
recursively examining a subquery output column is only sane if the
original Var refers to a single output column.  Found by Kevin Grittner.
This commit is contained in:
Tom Lane 2013-11-11 16:36:27 -05:00
parent 0b7e660d6c
commit ebefbb5fde
1 changed files with 6 additions and 0 deletions

View File

@ -4505,6 +4505,12 @@ examine_simple_variable(PlannerInfo *root, Var *var,
RelOptInfo *rel;
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
* mash underlying columns' stats beyond recognition. (Set ops are