Re: [WIP] Caching constant stable expressions per execution

Поиск
Список
Период
Сортировка
От Marti Raudsepp
Тема Re: [WIP] Caching constant stable expressions per execution
Дата
Msg-id CABRT9RBfCGvR6p3DHfW9wOk+_7j34Wn4i=nTfGeo-y=R1rz9xg@mail.gmail.com
обсуждение исходный текст
Ответ на Re: [WIP] Caching constant stable expressions per execution  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: [WIP] Caching constant stable expressions per execution
Список pgsql-hackers
On Sun, Sep 11, 2011 at 01:51, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Usually what people have meant when they ask for "function caching"
> is that multiple executions of a given stable function with the same
> argument values be folded to just one execution. In the general case
> that would require some sort of hash table

Right, this is more like execution-time constant folding. But I
decided not to call it that since I'm not "folding" the expression.

I know some people are writing queries like ts>=(SELECT now()-interval
'10 days') just to cache the single value from the expression.

> What you've done here is to solve the problem for the special case of
> a single (textual) instance of the function called with
> plan-time-constant arguments.

With a small tweak it can also support functions whose arguments are
(prepared query) placeholder variables.

> The patch as given has a bunch of implementation issues

This is my first patch that touches the more complicated internals of
Postgres. I'm sure I have a lot to learn. :)

Regards,
Marti


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

Предыдущее
От: Josh Berkus
Дата:
Сообщение: Re: [WIP] Caching constant stable expressions per execution
Следующее
От: Bruce Momjian
Дата:
Сообщение: Re: ts_rank