Document DSM Registry

Lists: pgsql-hackers
From: Florents Tselai <florents(dot)tselai(at)gmail(dot)com>
To: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>, Nathan Bossart <nathandbossart(at)gmail(dot)com>
Subject: Document DSM Registry
Date: 2025-07-13 10:15:27
Message-ID: B78E4638-A122-4B85-BEEE-69A717F74D21@gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Lists: pgsql-hackers


With the functions GetNamedDSA and GetNamedDSHash added in fe07100
and the system view pg_dsm_registry_allocations (167ed8),
I think its time the DSM Registry get its own subsection in the documentation that connects all these.

Here’s a patch that changes the title of xfunc-shared-addin-after-startup into “DSM Registry”,
and updates the content of the section itself.
I thought about updating the id too, but I don’t think it’s strictly necessary.

Attachment Content-Type Size
v1-0001-Document-DSM-registry.patch application/octet-stream 4.5 KB

From: Nathan Bossart <nathandbossart(at)gmail(dot)com>
To: Florents Tselai <florents(dot)tselai(at)gmail(dot)com>
Cc: PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Document DSM Registry
Date: 2025-10-06 19:38:01
Message-ID: aOQamT4fBf0Jw51I@nathan
Views: Whole Thread | Raw Message | Download mbox | Resend email
Lists: pgsql-hackers

- <title>Requesting Shared Memory After Startup</title>
+ <title>DSM Registry</title>

I'm -1 for renaming the section like this. The existing title makes the
purpose clear and is symmetrical with the section above it. I don't see a
need to expose the current implementation's name, either.

+ It supports creating named DSM segments with <function>GetNamedDSMSegment</function>,
+ named dynamic shared memory areas (DSAs) with <function>GetNamedDSA</function>,
+ and named hash tables backed by a DSA with <function>GetNamedDSHash</function>.

IMHO we should provide more details about DSAs and dshash tables.

One of the reasons I didn't add GetNamedDSA() and GetNamedDSHash() to these
docs was because there's no documentation for ShmemInitHash(), either. Can
we add something for that, too?

--
nathan