Re: introduce dynamic shared memory registry

Andrei Lepikhov <a.lepikhov@postgrespro.ru>

From: Andrei Lepikhov <a.lepikhov@postgrespro.ru>
To: Michael Paquier <michael@paquier.xyz>, Nathan Bossart <nathandbossart@gmail.com>
Cc: Robert Haas <robertmhaas@gmail.com>, pgsql-hackers@postgresql.org
Date: 2023-12-20T09:02:58Z
Lists: pgsql-hackers

Attachments

On 20/12/2023 07:04, Michael Paquier wrote:
> On Tue, Dec 19, 2023 at 10:14:44AM -0600, Nathan Bossart wrote:
>> On Tue, Dec 19, 2023 at 10:49:23AM -0500, Robert Haas wrote:
>>> On Mon, Dec 18, 2023 at 3:32 AM Andrei Lepikhov
>>> <a.lepikhov@postgrespro.ru> wrote:
>>>> 2. I think a separate file for this feature looks too expensive.
>>>> According to the gist of that code, it is a part of the DSA module.
>>>
>>> -1. I think this is a totally different thing than DSA. More files
>>> aren't nearly as expensive as the confusion that comes from smushing
>>> unrelated things together.
>>
>> Agreed.  I think there's a decent chance that more functionality will be
>> added to this registry down the line, in which case it will be even more
>> important that this stuff stays separate from the tools it is built with.
> 
> +1 for keeping a clean separation between both.

Thanks, I got the reason.
In that case, maybe change the test case to make it closer to real-life 
usage - with locks and concurrent access (See attachment)?

-- 
regards,
Andrei Lepikhov
Postgres Professional

Commits

  1. Fix possible NULL pointer dereference in GetNamedDSMSegment().

  2. Teach autoprewarm to use the dynamic shared memory registry.

  3. Introduce the dynamic shared memory registry.

  4. doc: Reorganize section for shared memory and LWLocks.