pgsql: Repair bug #2839: the various ExecReScan functions need to reset

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Repair bug #2839: the various ExecReScan functions need to reset
Date: 2006-12-26 19:26:56
Message-ID: 20061226192656.5E4339FA1DA@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Repair bug #2839: the various ExecReScan functions need to reset
ps_TupFromTlist in plan nodes that make use of it. This was being done
correctly in join nodes and Result nodes but not in any relation-scan nodes.
Bug would lead to bogus results if a set-returning function appeared in the
targetlist of a subquery that could be rescanned after partial execution,
for example a subquery within EXISTS(). Bug has been around forever :-(
... surprising it wasn't reported before.

Tags:
----
REL8_2_STABLE

Modified Files:
--------------
pgsql/src/backend/executor:
nodeBitmapHeapscan.c (r1.14 -> r1.14.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeBitmapHeapscan.c.diff?r1=1.14&r2=1.14.2.1)
nodeFunctionscan.c (r1.40 -> r1.40.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeFunctionscan.c.diff?r1=1.40&r2=1.40.2.1)
nodeIndexscan.c (r1.117 -> r1.117.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeIndexscan.c.diff?r1=1.117&r2=1.117.2.1)
nodeResult.c (r1.34 -> r1.34.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeResult.c.diff?r1=1.34&r2=1.34.2.1)
nodeSeqscan.c (r1.61 -> r1.61.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeSeqscan.c.diff?r1=1.61&r2=1.61.2.1)
nodeSubqueryscan.c (r1.32 -> r1.32.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeSubqueryscan.c.diff?r1=1.32&r2=1.32.2.1)
nodeTidscan.c (r1.51 -> r1.51.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeTidscan.c.diff?r1=1.51&r2=1.51.2.1)
nodeValuesscan.c (r1.3 -> r1.3.2.1)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/executor/nodeValuesscan.c.diff?r1=1.3&r2=1.3.2.1)

Browse pgsql-committers by date

  From Date Subject
Next Message Tom Lane 2006-12-26 19:27:04 pgsql: Repair bug #2839: the various ExecReScan functions need to reset
Previous Message Tom Lane 2006-12-26 19:26:46 pgsql: Repair bug #2839: the various ExecReScan functions need to reset