aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2005-05-29 18:34:57 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2005-05-29 18:34:57 +0000
commit7cac50271d891c21b08fe760103005a77a5e3eed (patch)
tree01717d389b0e2267247518a418d65d8e61216745 /src
parentd66daabec948df2a332a9b48ec5aa49145170d80 (diff)
downloadpostgresql-7cac50271d891c21b08fe760103005a77a5e3eed.tar.gz
postgresql-7cac50271d891c21b08fe760103005a77a5e3eed.zip
Avoid unnecessary call of rangeTableEntry_used() for the result relation
of a query.
Diffstat (limited to 'src')
-rw-r--r--src/backend/rewrite/rewriteHandler.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/backend/rewrite/rewriteHandler.c b/src/backend/rewrite/rewriteHandler.c
index a317764c43c..73c8dbab127 100644
--- a/src/backend/rewrite/rewriteHandler.c
+++ b/src/backend/rewrite/rewriteHandler.c
@@ -7,7 +7,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/rewrite/rewriteHandler.c,v 1.151 2005/04/28 21:47:14 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/rewrite/rewriteHandler.c,v 1.152 2005/05/29 18:34:57 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -699,7 +699,6 @@ ApplyRetrieveRule(Query *parsetree,
int rt_index,
bool relation_level,
Relation relation,
- bool relIsUsed,
List *activeRIRs)
{
Query *rule_action;
@@ -870,7 +869,6 @@ fireRIRrules(Query *parsetree, List *activeRIRs)
RuleLock *rules;
RewriteRule *rule;
LOCKMODE lockmode;
- bool relIsUsed;
int i;
++rt_index;
@@ -901,9 +899,8 @@ fireRIRrules(Query *parsetree, List *activeRIRs)
* part of the join set (a source table), or is referenced by any
* Var nodes, or is the result table.
*/
- relIsUsed = rangeTableEntry_used((Node *) parsetree, rt_index, 0);
-
- if (!relIsUsed && rt_index != parsetree->resultRelation)
+ if (rt_index != parsetree->resultRelation &&
+ !rangeTableEntry_used((Node *) parsetree, rt_index, 0))
continue;
/*
@@ -978,7 +975,6 @@ fireRIRrules(Query *parsetree, List *activeRIRs)
rt_index,
rule->attrno == -1,
rel,
- relIsUsed,
activeRIRs);
}