Fix mishandling of whole-row Vars referencing a view or sub-select.
Tom Lane <tgl@sss.pgh.pa.us>
Fix mishandling of whole-row Vars referencing a view or sub-select. If such a Var appeared within a nested sub-select, we failed to translate it correctly during pullup of the view, because the recursive call to replace_rte_variables_mutator was looking for the wrong sublevels_up value. Bug was introduced during the addition of the PlaceHolderVar mechanism. Per bug #5514 from Marcos Castedo.
Files
| Path | Change | +/− |
|---|---|---|
| src/backend/optimizer/prep/prepjointree.c | modified | +5 −1 |
| src/test/regress/expected/subselect.out | modified | +30 −0 |
| src/test/regress/sql/subselect.sql | modified | +14 −0 |