pgsql: Teach planner how to rearrange join order for some classes of

From: tgl(at)postgresql(dot)org (Tom Lane)
To: pgsql-committers(at)postgresql(dot)org
Subject: pgsql: Teach planner how to rearrange join order for some classes of
Date: 2005-12-20 02:30:36
Message-ID: 20051220023036.03BAC9DC89C@postgresql.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-committers

Log Message:
-----------
Teach planner how to rearrange join order for some classes of OUTER JOIN.
Per my recent proposal. I ended up basing the implementation on the
existing mechanism for enforcing valid join orders of IN joins --- the
rules for valid outer-join orders are somewhat similar.

Modified Files:
--------------
pgsql/doc/src/sgml:
config.sgml (r1.38 -> r1.39)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/config.sgml.diff?r1=1.38&r2=1.39)
perform.sgml (r1.54 -> r1.55)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/doc/src/sgml/perform.sgml.diff?r1=1.54&r2=1.55)
pgsql/src/backend/nodes:
copyfuncs.c (r1.322 -> r1.323)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/copyfuncs.c.diff?r1=1.322&r2=1.323)
equalfuncs.c (r1.258 -> r1.259)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/equalfuncs.c.diff?r1=1.258&r2=1.259)
outfuncs.c (r1.264 -> r1.265)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/nodes/outfuncs.c.diff?r1=1.264&r2=1.265)
pgsql/src/backend/optimizer:
README (r1.33 -> r1.34)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/README.diff?r1=1.33&r2=1.34)
pgsql/src/backend/optimizer/geqo:
geqo_eval.c (r1.78 -> r1.79)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/geqo/geqo_eval.c.diff?r1=1.78&r2=1.79)
pgsql/src/backend/optimizer/path:
allpaths.c (r1.138 -> r1.139)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/allpaths.c.diff?r1=1.138&r2=1.139)
joinrels.c (r1.77 -> r1.78)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/joinrels.c.diff?r1=1.77&r2=1.78)
pgsql/src/backend/optimizer/plan:
initsplan.c (r1.112 -> r1.113)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/initsplan.c.diff?r1=1.112&r2=1.113)
planmain.c (r1.90 -> r1.91)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/planmain.c.diff?r1=1.90&r2=1.91)
planner.c (r1.195 -> r1.196)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/planner.c.diff?r1=1.195&r2=1.196)
pgsql/src/backend/optimizer/prep:
prepjointree.c (r1.32 -> r1.33)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/prep/prepjointree.c.diff?r1=1.32&r2=1.33)
pgsql/src/backend/optimizer/util:
clauses.c (r1.203 -> r1.204)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/clauses.c.diff?r1=1.203&r2=1.204)
relnode.c (r1.73 -> r1.74)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/relnode.c.diff?r1=1.73&r2=1.74)
pgsql/src/backend/utils/misc:
guc.c (r1.301 -> r1.302)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/utils/misc/guc.c.diff?r1=1.301&r2=1.302)
pgsql/src/include/nodes:
nodes.h (r1.178 -> r1.179)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/nodes.h.diff?r1=1.178&r2=1.179)
primnodes.h (r1.109 -> r1.110)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/primnodes.h.diff?r1=1.109&r2=1.110)
relation.h (r1.121 -> r1.122)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/nodes/relation.h.diff?r1=1.121&r2=1.122)
pgsql/src/include/optimizer:
clauses.h (r1.80 -> r1.81)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/clauses.h.diff?r1=1.80&r2=1.81)
paths.h (r1.89 -> r1.90)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/paths.h.diff?r1=1.89&r2=1.90)
planmain.h (r1.90 -> r1.91)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/planmain.h.diff?r1=1.90&r2=1.91)
prep.h (r1.52 -> r1.53)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/prep.h.diff?r1=1.52&r2=1.53)

Browse pgsql-committers by date

  From Date Subject
Next Message User Chriskl 2005-12-20 05:16:42 dbsamples - dbsamples: New Directory
Previous Message Tom Lane 2005-12-20 00:51:46 pgsql: Fix broken markup.