From: | tgl(at)postgresql(dot)org (Tom Lane) |
---|---|
To: | pgsql-committers(at)postgresql(dot)org |
Subject: | pgsql: Teach planner to convert simple UNION ALL subqueries into append |
Date: | 2006-02-03 21:08:49 |
Message-ID: | 20060203210849.D85429DCC2B@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-committers |
Log Message:
-----------
Teach planner to convert simple UNION ALL subqueries into append relations,
thereby sharing code with the inheritance case. This puts the UNION-ALL-view
approach to partitioned tables on par with inheritance, so far as constraint
exclusion is concerned: it works either way. (Still need to update the docs
to say so.) The definition of "simple UNION ALL" is a little simpler than
I would like --- basically the union arms can only be SELECT * FROM foo
--- but it's good enough for partitioned-table cases.
Modified Files:
--------------
pgsql/src/backend/optimizer/path:
allpaths.c (r1.140 -> r1.141)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/allpaths.c.diff?r1=1.140&r2=1.141)
joinpath.c (r1.99 -> r1.100)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/path/joinpath.c.diff?r1=1.99&r2=1.100)
pgsql/src/backend/optimizer/plan:
planner.c (r1.197 -> r1.198)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/plan/planner.c.diff?r1=1.197&r2=1.198)
pgsql/src/backend/optimizer/prep:
prepjointree.c (r1.34 -> r1.35)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/prep/prepjointree.c.diff?r1=1.34&r2=1.35)
prepunion.c (r1.129 -> r1.130)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/prep/prepunion.c.diff?r1=1.129&r2=1.130)
pgsql/src/backend/optimizer/util:
relnode.c (r1.75 -> r1.76)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/relnode.c.diff?r1=1.75&r2=1.76)
tlist.c (r1.70 -> r1.71)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/backend/optimizer/util/tlist.c.diff?r1=1.70&r2=1.71)
pgsql/src/include/optimizer:
pathnode.h (r1.64 -> r1.65)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/pathnode.h.diff?r1=1.64&r2=1.65)
prep.h (r1.54 -> r1.55)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/prep.h.diff?r1=1.54&r2=1.55)
tlist.h (r1.42 -> r1.43)
(http://developer.postgresql.org/cvsweb.cgi/pgsql/src/include/optimizer/tlist.h.diff?r1=1.42&r2=1.43)
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2006-02-04 00:42:54 | pgsql: First attempt at removing some AC_CHECK_LIB(foo, main) calls. |
Previous Message | Bruce Momjian | 2006-02-03 19:04:42 | pgsql: New Directory |