diff options
| author | Tom Lane <tgl@sss.pgh.pa.us> | 1999-08-22 20:15:04 +0000 |
|---|---|---|
| committer | Tom Lane <tgl@sss.pgh.pa.us> | 1999-08-22 20:15:04 +0000 |
| commit | 78114cd4d4fd99feb0c753de34d358b16d1ff0ee (patch) | |
| tree | 58838858badf427beddaafe425a9def510741d37 /src/backend/optimizer/prep | |
| parent | db436adf761bd5cb7990745ceba2959ac4bfca7c (diff) | |
| download | postgresql-78114cd4d4fd99feb0c753de34d358b16d1ff0ee.tar.gz | |
Further planner/optimizer cleanups. Move all set_tlist_references
and fix_opids processing to a single recursive pass over the plan tree
executed at the very tail end of planning, rather than haphazardly here
and there at different places. Now that tlist Vars do not get modified
until the very end, it's possible to get rid of the klugy var_equal and
match_varid partial-matching routines, and just use plain equal()
throughout the optimizer. This is a step towards allowing merge and
hash joins to be done on expressions instead of only Vars ...
Diffstat (limited to 'src/backend/optimizer/prep')
| -rw-r--r-- | src/backend/optimizer/prep/preptlist.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/backend/optimizer/prep/preptlist.c b/src/backend/optimizer/prep/preptlist.c index 2a9ddfc716..95e5ddbc9d 100644 --- a/src/backend/optimizer/prep/preptlist.c +++ b/src/backend/optimizer/prep/preptlist.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/optimizer/prep/preptlist.c,v 1.30 1999/08/21 03:49:05 tgl Exp $ + * $Header: /cvsroot/pgsql/src/backend/optimizer/prep/preptlist.c,v 1.31 1999/08/22 20:14:51 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -59,8 +59,6 @@ preprocess_targetlist(List *tlist, */ expanded_tlist = expand_targetlist(tlist, relid, command_type, result_relation); - /* XXX should the fix-opids be this early?? */ - fix_opids(expanded_tlist); t_list = copyObject(expanded_tlist); /* ------------------ @@ -87,7 +85,7 @@ preprocess_targetlist(List *tlist, 0, true); - var = makeVar(result_relation, -1, TIDOID, -1, 0, result_relation, -1); + var = makeVar(result_relation, -1, TIDOID, -1, 0); ctid = makeTargetEntry(resdom, (Node *) var); t_list = lappend(t_list, ctid); @@ -340,8 +338,8 @@ new_relation_targetlist(Oid relid, Index rt_index, NodeTag node_type) Var *temp_var; TargetEntry *temp_tle; - temp_var = makeVar(rt_index, attno, atttype, atttypmod, - 0, rt_index, attno); + temp_var = makeVar(rt_index, attno, atttype, + atttypmod, 0); temp_tle = makeTargetEntry(makeResdom(attno, atttype, |
