Re: Improve LWLock tranche name visibility across backends

From: Nathan Bossart <nathandbossart(at)gmail(dot)com>
To: Sami Imseih <samimseih(at)gmail(dot)com>
Cc: Bertrand Drouvot <bertranddrouvot(dot)pg(at)gmail(dot)com>, pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Improve LWLock tranche name visibility across backends
Date: 2025-07-15 17:12:06
Message-ID: aHaL5uFCaj_cfueU@nathan
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Tue, Jul 15, 2025 at 12:06:00PM -0500, Sami Imseih wrote:
> On Tue, Jul 15, 2025 at 11:57 AM Nathan Bossart
> <nathandbossart(at)gmail(dot)com> wrote:
>> I was imagining putting the array in one big DSA allocation instead of
>> carting around a pointer for each tranche name. (Sorry, I realize I am
>> hand-waving over some of the details.)
>
> I understood it like this. Here is a sketch:
>
> ```
> dsa_pointer p;
>
> dsa = dsa_create(....)
>
> p = dsa_allocate(dsa, LWLockTranchesInitialSize());
> tranche_names = (char **) dsa_get_address(dsa, p);
> tranche_names[0] = "my tranche";
> tranche_names[1] = "my tranche";
> ```
>
> We will need to track the size and resize if needed.
>
> Is this what you mean, from a high level?

Yes, that's roughly what I had in mind. We might need to employ some
tricks to avoid a limit on tranche name length, but maybe that's not worth
the energy.

--
nathan

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message vignesh C 2025-07-15 17:24:08 Re: Log prefix missing for subscriber log messages received from publisher
Previous Message Masahiko Sawada 2025-07-15 17:07:11 Re: POC: enable logical decoding when wal_level = 'replica' without a server restart