summaryrefslogtreecommitdiff
path: root/src/backend/rewrite/rewriteDefine.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2002-09-11 14:48:55 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2002-09-11 14:48:55 +0000
commit6fdc44be71e7732b4a9550d04befcc9144ef188f (patch)
tree31f001c17376b228922d1424c6b70e477318e2ad /src/backend/rewrite/rewriteDefine.c
parentd634a5903f615a45cb463155c04d3df904e1b91a (diff)
downloadpostgresql-6fdc44be71e7732b4a9550d04befcc9144ef188f.tar.gz
Tweak querytree-dependency-extraction code so that columns of tables
that are explicitly JOINed are not considered dependencies unless they are actually used in the query: mere presence in the joinaliasvars list of a JOIN RTE doesn't count as being used. The patch touches a number of files because I needed to generalize the API of query_tree_walker to support an additional flag bit, but the changes are otherwise quite small.
Diffstat (limited to 'src/backend/rewrite/rewriteDefine.c')
-rw-r--r--src/backend/rewrite/rewriteDefine.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/backend/rewrite/rewriteDefine.c b/src/backend/rewrite/rewriteDefine.c
index 2aa4fdd892..1933482faa 100644
--- a/src/backend/rewrite/rewriteDefine.c
+++ b/src/backend/rewrite/rewriteDefine.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteDefine.c,v 1.79 2002/09/04 20:31:25 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/rewrite/rewriteDefine.c,v 1.80 2002/09/11 14:48:54 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -464,9 +464,10 @@ setRuleCheckAsUser(Query *qry, Oid userid)
}
/* If there are sublinks, search for them and process their RTEs */
+ /* ignore subqueries in rtable because we already processed them */
if (qry->hasSubLinks)
query_tree_walker(qry, setRuleCheckAsUser_walker, (void *) &userid,
- false /* already did the ones in rtable */ );
+ QTW_IGNORE_SUBQUERIES);
}
/*