aboutsummaryrefslogtreecommitdiff
path: root/src/backend/executor/nodeNestloop.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2000-08-13 02:50:35 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2000-08-13 02:50:35 +0000
commit37168b8da43d9a6f7471cf757119ece6c96fb2b9 (patch)
treece7059e77ac05a045f9de7c6272c7e1c8210d96a /src/backend/executor/nodeNestloop.c
parent766fb7f707f9527be219353f5f970aab3d786554 (diff)
downloadpostgresql-37168b8da43d9a6f7471cf757119ece6c96fb2b9.tar.gz
postgresql-37168b8da43d9a6f7471cf757119ece6c96fb2b9.zip
Clean up handling of variable-free qual clauses. System now does the
right thing with variable-free clauses that contain noncachable functions, such as 'WHERE random() < 0.5' --- these are evaluated once per potential output tuple. Expressions that contain only Params are now candidates to be indexscan quals --- for example, 'var = ($1 + 1)' can now be indexed. Cope with RelabelType nodes atop potential indexscan variables --- this oversight prevents 7.0.* from recognizing some potentially indexscanable situations.
Diffstat (limited to 'src/backend/executor/nodeNestloop.c')
-rw-r--r--src/backend/executor/nodeNestloop.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/backend/executor/nodeNestloop.c b/src/backend/executor/nodeNestloop.c
index 70b98a97e3a..f59c1b0f602 100644
--- a/src/backend/executor/nodeNestloop.c
+++ b/src/backend/executor/nodeNestloop.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/executor/nodeNestloop.c,v 1.18 2000/07/17 03:04:53 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/executor/nodeNestloop.c,v 1.19 2000/08/13 02:50:03 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -57,7 +57,7 @@
* ----------------------------------------------------------------
*/
TupleTableSlot *
-ExecNestLoop(NestLoop *node, Plan *parent)
+ExecNestLoop(NestLoop *node)
{
NestLoopState *nlstate;
Plan *innerPlan;
@@ -187,7 +187,7 @@ ExecNestLoop(NestLoop *node, Plan *parent)
* outer tuple (e.g. in index scans), that's why we pass our
* expr context.
*/
- ExecReScan(innerPlan, econtext, parent);
+ ExecReScan(innerPlan, econtext, (Plan *) node);
ENL1_printf("getting new inner tuple");