diff options
author | Marc G. Fournier | 1996-07-25 20:36:46 +0000 |
---|---|---|
committer | Marc G. Fournier | 1996-07-25 20:36:46 +0000 |
commit | 5315d37c207c907c2b732ef9c34ab61aaee8fa13 (patch) | |
tree | 5fbc117392c20843459e8fdad8f21b5927ea464f | |
parent | aac483943d45beaa00a8f1eeae4c96d1bc62b522 (diff) |
Fix applied for NESTLOOP bug
submitted by: [email protected] (Vadim B. Mikheev)
-rw-r--r-- | src/backend/optimizer/util/clauses.c | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/src/backend/optimizer/util/clauses.c b/src/backend/optimizer/util/clauses.c index daba4d8fdb0..dab4ea88467 100644 --- a/src/backend/optimizer/util/clauses.c +++ b/src/backend/optimizer/util/clauses.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/util/clauses.c,v 1.1.1.1 1996/07/09 06:21:38 scrappy Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/util/clauses.c,v 1.2 1996/07/25 20:36:46 scrappy Exp $ * * HISTORY * AUTHOR DATE MAJOR EVENT @@ -356,11 +356,21 @@ clause_relids_vars(Node *clause, List **relids, List **vars) foreach (i, clvars) { Var *var = (Var *)lfirst(i); + List *vi; if (!intMember(var->varno, varno_list)) { varno_list = lappendi(varno_list, var->varno); - var_list = lappend(var_list, var); } + foreach (vi, var_list) + { + Var *in_list = (Var *)lfirst(vi); + + if ( in_list->varno == var->varno && + in_list->varattno == var->varattno ) + break; + } + if ( vi == NIL ) + var_list = lappend(var_list, var); } *relids = varno_list; |