Re: add function for creating/attaching hash table in DSM registry

Nathan Bossart <nathandbossart@gmail.com>

From: Nathan Bossart <nathandbossart@gmail.com>
To: Rahila Syed <rahilasyed90@gmail.com>
Cc: Florents Tselai <florents.tselai@gmail.com>, Sami Imseih <samimseih@gmail.com>, Dagfinn Ilmari Mannsåker <ilmari@ilmari.org>, pgsql-hackers@postgresql.org
Date: 2025-06-17T18:41:54Z
Lists: pgsql-hackers

Attachments

On Tue, Jun 17, 2025 at 11:57:33AM -0500, Nathan Bossart wrote:
> I like this idea, but I took it one step further in the attached patch and
> made the registry entry struct flexible enough to store any type of entry.
> Specifically, I've added a new "type" enum followed by a union of the
> different structs used to store the entry data.  I was originally trying to
> avoid this kind of invasive change, but it's not nearly as complicated as I
> feared, and there are benefits such as fewer shared memory things to juggle
> and better sanity checking.  It should also be easy to extend in the
> future.  WDYT?

Sorry for the noise.  I noticed a couple of silly mistakes in v9.

-- 
nathan

Commits

  1. Fix cross-version upgrade test breakage from commit fe07100e82.

  2. Add GetNamedDSA() and GetNamedDSHash().

  3. Remove dynamic_shared_memory_type=none

  4. Introduce dynamic shared memory areas.

  5. Relax the requirement that all lwlocks be stored in a single array.