summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTom Lane2003-02-07 00:02:43 +0000
committerTom Lane2003-02-07 00:02:43 +0000
commitc228ef15874075bd70d326771ca651aced603770 (patch)
tree741e56f9fd70add85e0cbefd97b6a5a6b8267b50
parent2425ab3eced773bd04c60441d57e89d56558e57d (diff)
Avoid generating relid lists with duplicate entries. Fixes bugs
reported by Stefanos Harhalakis 2/2/2003.
-rw-r--r--src/backend/optimizer/plan/initsplan.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/backend/optimizer/plan/initsplan.c b/src/backend/optimizer/plan/initsplan.c
index e06282c1265..60269e62fc1 100644
--- a/src/backend/optimizer/plan/initsplan.c
+++ b/src/backend/optimizer/plan/initsplan.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/initsplan.c,v 1.75 2002/09/04 20:31:21 momjian Exp $
+ * $Header: /cvsroot/pgsql/src/backend/optimizer/plan/initsplan.c,v 1.75.2.1 2003/02/07 00:02:43 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -443,7 +443,8 @@ distribute_qual_to_rels(Query *root, Node *clause,
else
{
/* this relid is for a true baserel */
- newrelids = lappendi(newrelids, lfirsti(relid));
+ if (!intMember(lfirsti(relid), newrelids))
+ newrelids = lappendi(newrelids, lfirsti(relid));
}
}
relids = newrelids;