|From:||Ildus Kurbangaliev <i(dot)kurbangaliev(at)postgrespro(dot)ru>|
|To:||Robert Haas <robertmhaas(at)gmail(dot)com>|
|Cc:||"andres(at)anarazel(dot)de" <andres(at)anarazel(dot)de>, Alvaro Herrera <alvherre(at)2ndquadrant(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, Alexander Korotkov <a(dot)korotkov(at)postgrespro(dot)ru>, Heikki Linnakangas <hlinnaka(at)iki(dot)fi>|
|Subject:||Re: [PATCH] Refactoring of LWLock tranches|
|Views:||Raw Message | Whole Thread | Download mbox | Resend email|
On Thu, 19 Nov 2015 11:09:38 -0500
Robert Haas <robertmhaas(at)gmail(dot)com> wrote:
> On Thu, Nov 19, 2015 at 9:04 AM, Ildus Kurbangaliev
> <i(dot)kurbangaliev(at)postgrespro(dot)ru> wrote:
> > The moving base tranches to shared memory has been discussed many
> > times. The point is using them later in pg_stat_activity and other
> > monitoring views.
> I'm not in agreement with this idea. Actually, I'd prefer that the
> tranches live in backend-private memory, not shared memory, so that we
> could for example add backend-local counters to them if desired. The
> SLRU patch is the first time we've put them in shared memory, but it
> would be easy to keep only the things that the tranche needs to point
> to in shared memory and put the tranche itself back in each backend,
> which I tend to think is what we should do.
We keep limited number of LWLocks in base shared memory, why not keep
their thanches in shared memory too? Other tranches can be in local
memory, we just have to save somewhere highest id of these tranches.
We have not so many of possible builtin tranches, excluding the SLRU
tranches, there will be only seven: three for buffer manager, one for
each of proc.c, slot.c, lock manager and predicate lock manager.
Postgres Professional: http://www.postgrespro.com
Russian Postgres Company
|Next Message||Taiki Kondo||2015-11-20 12:05:38||Re: [Proposal] Table partition + join pushdown|
|Previous Message||Alvaro Herrera||2015-11-20 11:44:46||Re: Declarative partitioning|