pgsql: Fix subselect.c to avoid assuming that a SubLink's testexpr

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Fix subselect.c to avoid assuming that a SubLink's testexpr
Date: 2008-01-17 20:35:34
Message-ID: 20080117203534.C4846754108@cvs.postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Fix subselect.c to avoid assuming that a SubLink's testexpr references each
subquery output column exactly once left-to-right. Although this is the case
in the original parser output, it might not be so after rewriting and
constant-folding, as illustrated by bug #3882 from Jan Mate. Instead
scan the subquery's target list to obtain needed per-column information;
this is duplicative of what the parser did, but only a couple dozen lines
need be copied, and we can clean up a couple of notational uglinesses.
Bug was introduced in 8.2 as part of revision of SubLink representation.

Tags:
----
REL8_2_STABLE

Modified Files:
--------------
pgsql/src/backend/optimizer/plan:
subselect.c (r1.112.2.2 -> r1.112.2.3)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/subselect.c?r1=1.112.2.2&r2=1.112.2.3)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2008-01-17 21:21:50 pgsql: Insert into getCopyDataMessage() the same logic that already
Previous Message Tom Lane 2008-01-17 20:35:28 pgsql: Fix subselect.c to avoid assuming that a SubLink's testexpr