From: | Andres Freund <andres(at)anarazel(dot)de> |
---|---|
To: | Paul Ramsey <pramsey(at)cleverelephant(dot)ca> |
Cc: | Simon Riggs <simon(at)2ndquadrant(dot)com>, Michael Paquier <michael(dot)paquier(at)gmail(dot)com>, Pgsql Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: [PATCH] postgres_fdw extension support |
Date: | 2015-07-21 15:00:51 |
Message-ID: | 20150721150051.GE13636@awork2.anarazel.de |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 2015-07-21 07:55:17 -0700, Paul Ramsey wrote:
> On Tue, Jul 21, 2015 at 7:45 AM, Andres Freund <andres(at)anarazel(dot)de> wrote:
> So, right after reading the options in postgresGetForeignRelSize,
> expand the extension list into a list of all ops/functions, in a
> sorted list, and let that carry through to the deparsing instead?
I'd actually try to make it longer lived, i.e. permanently. And just
deallocate when a catcache callback says it needs to be invalidated;
IIRC there is a relevant cache.
> That
> would happen once per query, right? But the deparsing also happens
> once per query too, yes? Is the difference going to be that big? (I
> speak not knowing the overhead of things like systable_beginscan, etc)
What you have here is an O(nmembers * nexpressions) approach. And each
of those scans is going to do non-neglegible work (an index scan of
pg_depend), that's fairly expensive.
- Andres
From | Date | Subject | |
---|---|---|---|
Next Message | Petr Jelinek | 2015-07-21 15:02:52 | Re: TABLESAMPLE patch is really in pretty sad shape |
Previous Message | Merlin Moncure | 2015-07-21 14:58:15 | Re: PL/pgSQL, RAISE and error context |