diff options
Diffstat (limited to 'src/backend/optimizer/util/var.c')
-rw-r--r-- | src/backend/optimizer/util/var.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/backend/optimizer/util/var.c b/src/backend/optimizer/util/var.c index e46655e17db..94e0f15e289 100644 --- a/src/backend/optimizer/util/var.c +++ b/src/backend/optimizer/util/var.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/optimizer/util/var.c,v 1.59 2004/06/01 04:47:46 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/optimizer/util/var.c,v 1.60 2004/08/19 20:57:40 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -515,11 +515,19 @@ flatten_join_alias_vars_mutator(Node *node, /* Must expand whole-row reference */ RowExpr *rowexpr; List *fields = NIL; + AttrNumber attnum; ListCell *l; + attnum = 0; foreach(l, rte->joinaliasvars) { newvar = (Node *) lfirst(l); + attnum++; + /* Ignore dropped columns */ + if (get_rte_attribute_is_dropped(context->root->rtable, + var->varno, + attnum)) + continue; /* * If we are expanding an alias carried down from an upper * query, must adjust its varlevelsup fields. |