Ken Tanzer <[email protected]> writes:
> On Sat, Jul 20, 2019 at 7:46 AM Tom Lane <[email protected]> wrote:
>> and then to add insult to injury, has to search pg_description a second
>> time for each hit.
> Not sure if I'm understanding this correctly, but are you saying that
> because col_description() is specified in two places in the query, that it
> actually will get called twice?
Yes.
> I was under the impression that a function
> (at least a non-volatile one) specified multiple times, but with the same
> arguments, would only get called once. Is that just wishful thinking?
Afraid so. There's been assorted talk about various optimizations to
avoid unnecessary duplicate function calls, but I don't think that
merging textually-separate calls has even been on the radar. The
discussions I can recall have been more about not calling stable functions
(with fixed arguments) more than once per query.
regards, tom lane