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
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 |