One-Shot Plans

Поиск
Список
Период
Сортировка
От Simon Riggs
Тема One-Shot Plans
Дата
Msg-id BANLkTikAN=g1oCC+tY72o7FFH0OjF+Yy=A@mail.gmail.com
обсуждение исходный текст
Ответы Re: One-Shot Plans  (Bruce Momjian <bruce@momjian.us>)
Re: One-Shot Plans  (Tom Lane <tgl@sss.pgh.pa.us>)
Re: One-Shot Plans  (Jaime Casanova <jaime@2ndquadrant.com>)
Список pgsql-hackers
Currently, the planner and executor are mostly independent of each
other: the planner doesn't really know when the plan will be executed,
and the executor doesn't know how recently the plan was made.

We can work out the various paths through the traffic cop to see when
a plan will be a "one-shot" - planned and then executed immediately,
then discarded.

In those cases we can take advantage of better optimisations. Most
interestingly, we can evaluate stable functions at plan time, to allow
us to handle partitioning and partial indexes better.

Patch attached. Works...

SET constraint_exclusion = on;
ALTER TABLE <table> ADD CHECK (dt < current_date - 5);
SELECT * FROM <table> WHERE datecolumn >= current_date - 1;
                QUERY PLAN
------------------------------------------
 Result  (cost=0.00..0.01 rows=1 width=0)
   One-Time Filter: false
(2 rows)

WIP in the sense that we might want to change the special case
parameter handling as well.

Comments?

--
 Simon Riggs                   http://www.2ndQuadrant.com/
 PostgreSQL Development, 24x7 Support, Training & Services

Вложения

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

Предыдущее
От: "Kevin Grittner"
Дата:
Сообщение: Re: procpid?
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: One-Shot Plans