Re: scalar plpgsql functions and their stability flags
| От | Tom Lane |
|---|---|
| Тема | Re: scalar plpgsql functions and their stability flags |
| Дата | |
| Msg-id | 2721.1716733634@sss.pgh.pa.us обсуждение исходный текст |
| Ответ на | scalar plpgsql functions and their stability flags (Victor Dobrovolsky <booby.stager@gmail.com>) |
| Список | pgsql-general |
Victor Dobrovolsky <booby.stager@gmail.com> writes:
> It is clear that for immutable/stable functions with constant parameters,
> query planner could/should calculate value in a parse time and use it
> directly in query, or at least once per query.
Immutable, yes, stable, no.
Awhile back there was a draft patch to cache outputs of stable functions
after running them once in a query, but I don't think anyone's still
working on that. IIRC we were having a hard time convincing ourselves
that the extra bookkeeping would pay for itself.
> But it is unclear for me what exactly should/can happens when parameters
> are bounded not to constant values but to query fields.
> In such a case there could be some caching mechanics involved for
> parameters combinations and result values.
> Like building a hash table for that or something similar.
No such mechanism exists. Again, there would be a lot of tradeoffs
involved and it's difficult to say if it'd be a win.
regards, tom lane
В списке pgsql-general по дате отправления: