Re: dynamic shared memory and locks

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: Andres Freund <andres(at)2ndquadrant(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: dynamic shared memory and locks
Date: 2014-01-06 20:48:18
Message-ID: CA+TgmobhQ6pj=dYxyufOtn7Zt__4gSFT0Gs-dCBURd8T7+-iqg@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Jan 6, 2014 at 3:40 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
> Robert Haas <robertmhaas(at)gmail(dot)com> writes:
>> On Mon, Jan 6, 2014 at 1:55 PM, Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> wrote:
>>> OTOH, the LWLock mechanism has been stable for long enough now that
>>> we can probably suppose this struct is no more subject to churn than
>>> any other widely-known one, so maybe that consideration is no longer
>>> significant.
>
>> On the whole, I'd say it's been more stable than most. But even if we
>> do decide to change it, I'm not sure that really matters very much.
>
> Actually, the real value of a module-local struct definition is that you
> can be pretty darn sure that nothing except the code in that file is
> manipulating the struct contents. I would've preferred that we expose
> only an abstract struct definition, but don't quite see how to do that
> if we're going to embed the things in buffer headers.

Agreed. I think it's good to keep struct definitions private as much
as possible, and I do. But I don't think this is going to cause a big
problem either; lwlocks have been around for a long time and the
conventions for using them are pretty well understood, I think.

--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 2014-01-06 20:57:02 Re: dynamic shared memory and locks
Previous Message Robert Haas 2014-01-06 20:45:07 Re: dynamic shared memory and locks