From: | Simon Riggs <simon(at)2ndQuadrant(dot)com> |
---|---|
To: | Paul Ramsey <pramsey(at)cleverelephant(dot)ca> |
Cc: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Pgsql Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | Re: Traffic jams in fn_extra |
Date: | 2013-11-24 16:21:15 |
Message-ID: | CA+U5nMKXFLh5n45KGwGVMzMKvwDxavYePdSqwZp=XCCyawwuBA@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
On 19 November 2013 23:08, Paul Ramsey <pramsey(at)cleverelephant(dot)ca> wrote:
> On the solution, I wasn't suggesting another void* slot, but rather a
> slot that holds a hash table, so that an arbitrary number of things
> can be stuffed in. Overkill, really, since in 99.9% of times only one
> thing would be in there, and in the other 0.1% of times two things. In
> our own GenericCacheCollection, we just statically allocate 16 slots.
Why do you need to do this dance with fn_extra?
It's possible to allocate a hash table in a Transaction-lifetime
memory context on first call into a function then cache things there.
--
Simon Riggs http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
From | Date | Subject | |
---|---|---|---|
Next Message | Pavel Stehule | 2013-11-24 16:29:21 | Re: review - pg_stat_statements |
Previous Message | Dimitri Fontaine | 2013-11-24 16:20:44 | Re: Completing PL support for Event Triggers |