Re: Why overhead of SPI is so large?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>
Cc: k(dot)knizhnik(at)postgrespro(dot)ru, pavel(dot)stehule(at)gmail(dot)com, tsunakawa(dot)takay(at)jp(dot)fujitsu(dot)com, pgsql-hackers(at)postgresql(dot)org
Subject: Re: Why overhead of SPI is so large?
Date: 2019-11-20 20:18:24
Message-ID: 18739.1574281104@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com> writes:
> At Tue, 12 Nov 2019 11:27:24 +0300, Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru> wrote in
>> In my opinion contain_mutable_functions() is the best solution.
>> But if it is not acceptable, I will rewrite the patch in white-list
>> fashion.

> I agree for just relying on contain_mutable_functions for the same
> reasons to Tom.

I've set the CF entry to "Waiting on Author" pending a new patch
that does it like that.

>> I do not understand the argument about expensive
>> is-it-in-the-pg_catalog-schema test.
>> IsCatalogNameaspace is doing just simple comparison without any
>> catalog lookups:

As far as that goes, get_func_namespace() is the expensive part,
not IsCatalogNamespace(). If we were going to go down this path,
it'd perhaps be worthwhile to expand that and the adjacent
func_volatile() test into bulkier code that just does one syscache
fetch of the pg_proc row. But we're not, so it's moot.

regards, tom lane

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Xun Cheng 2019-11-20 20:34:25 Re: why doesn't optimizer can pull up where a > ( ... )
Previous Message Paul A Jungwirth 2019-11-20 19:32:10 Re: range_agg