pg.ddx.io pgsql-hackers@postgresql.org mailing list archive
help / color / mirror / Atom feed From: Nathan Bossart <nathandbossart@gmail.com>
To: Sami Imseih <samimseih@gmail.com>
Cc: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Cc: pgsql-hackers <pgsql-hackers@postgresql.org>
Subject: Re: Improve LWLock tranche name visibility across backends
Date: Mon, 14 Jul 2025 16:39:18 -0500
Message-ID: <aHV5BsKoSeOkIsNL@nathan> (raw )
In-Reply-To: <CAA5RZ0vb_CVR7SuCpHrLbV4yDQJ8o9WUudz51YRjUr4PLiDMYg@mail.gmail.com >
References: <CAA5RZ0vvED3naph8My8Szv6DL4AxOVK3eTPS0qXsaKi=bVdW2A@mail.gmail.com >
<aG9/OKQRgPUCxmsX@ip-10-97-1-34.eu-west-3.compute.internal >
<CAA5RZ0ui5+=Q3ouxbrjSKa1xJvOjDD2tNYfkG-UtJJNNc-4E=g@mail.gmail.com >
<aHDYHKdEyZiV/Aob@ip-10-97-1-34.eu-west-3.compute.internal >
<CAA5RZ0vK_EuHwGj8nWkb1UwYjDbqvj+ZyiYPYn3CRsU8uwKUsQ@mail.gmail.com >
<aHGJBt37dg37f1bE@nathan >
<CAA5RZ0uic7Us255mFPJSrMFH7UY-RR8YZcjBzNDzfE4gFREDGQ@mail.gmail.com >
<aHVeqtsltQyBBvAM@nathan >
<CAA5RZ0vb_CVR7SuCpHrLbV4yDQJ8o9WUudz51YRjUr4PLiDMYg@mail.gmail.com >
On Mon, Jul 14, 2025 at 03:45:02PM -0500, Sami Imseih wrote:
>> Ah, I missed the problem with postmaster. Could we have the first backend
>> that needs to access the table be responsible for creating it and
>> populating it with the built-in/requested-at-startup entries?
>
> We can certainly maintain a flag in the shared state that is set once
> the first backend loads all the tranches in shared memory. That did not
> cross my mind, but it feels wrong to offload such responsibility to a
> normal backend.
Well, we already need each backend to either initialize or attach to the
dshash table, and the initialization would only ever happen once on a
running server. Adding a new initialization step to bootstrap the built-in
and registered-at-startup tranche names doesn't seem like that much of a
leap to me.
Another random thought: I worry that the dshash approach might be quite a
bit slower, and IIUC we just need to map an integer to a string. Maybe we
should just use a DSA for LWLockTrancheNames. IOW we'd leave it as a char
** but put it in shared memory.
--
nathan
view thread (107+ messages) latest in thread
Message-ID: <aHV5BsKoSeOkIsNL@nathan>
Permalink: ../aHV5BsKoSeOkIsNL@nathan/
Also on: postgresql.org/message-id/aHV5BsKoSeOkIsNL@nathan
copy link · copy postgr.es
reply Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: nathandbossart@gmail.com, samimseih@gmail.com, bertranddrouvot.pg@gmail.com
Subject: Re: Improve LWLock tranche name visibility across backends
In-Reply-To: <aHV5BsKoSeOkIsNL@nathan>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox