pgsql: Use appendrel planning logic for top-level UNION ALL structures.

Поиск
Список
Период
Сортировка
От Tom Lane
Тема pgsql: Use appendrel planning logic for top-level UNION ALL structures.
Дата
Msg-id E1PFY8X-0003Go-Tv@gemulon.postgresql.org
обсуждение исходный текст
Список pgsql-committers
Use appendrel planning logic for top-level UNION ALL structures.

Formerly, we could convert a UNION ALL structure inside a subquery-in-FROM
into an appendrel, as a side effect of pulling up the subquery into its
parent; but top-level UNION ALL always caused use of plan_set_operations().
That didn't matter too much because you got an Append-based plan either
way.  However, now that the appendrel code can do things with MergeAppend,
it's worthwhile to hack up the top-level case so it also uses appendrels.

This is a bit of a stopgap; but going much further than this will require
a major rewrite of the planner's set-operations support, which I'm not
prepared to undertake now.  For the moment let's grab the low-hanging fruit.

Branch
------
master

Details
-------
http://git.postgresql.org/gitweb?p=postgresql.git;a=commitdiff;h=947d0c862c895618a874344322e7b07c9df05cb2

Modified Files
--------------
src/backend/optimizer/plan/planner.c      |   11 +++-
src/backend/optimizer/prep/prepjointree.c |  121 ++++++++++++++++++++++++++---
src/include/optimizer/prep.h              |    1 +
3 files changed, 121 insertions(+), 12 deletions(-)


В списке pgsql-committers по дате отправления:

Предыдущее
От: hinoue@pgfoundry.org (User Hinoue)
Дата:
Сообщение: psqlodbc - psqlodbc: Don't propgate the connection level statment
Следующее
От: Alvaro Herrera
Дата:
Сообщение: pgsql: Fix permanent memory leak in autovacuum launcher