Re: Fix pg_stat_get_backend_wait_event() for aux processes

Heikki Linnakangas <hlinnaka@iki.fi>

From: Heikki Linnakangas <hlinnaka@iki.fi>
To: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
Cc: Sami Imseih <samimseih@gmail.com>, Robert Haas <robertmhaas@gmail.com>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2026-02-04T09:36:14Z
Lists: pgsql-hackers
On 04/02/2026 10:02, Bertrand Drouvot wrote:
> On Tue, Feb 03, 2026 at 10:29:27PM +0200, Heikki Linnakangas wrote:
>> There might be a performance argument too,
> 
> yeah, not sure but with the patch in place the size of PGPROC goes from
> 832 bytes to 824 bytes. Is it worth to add extra padding so that it still remain
> a multiple of 64?

Hmm, I don't think so. We've never given cacheline alignment any thought 
when we've changed the PGPROC fields in the past (or at least I 
haven't). Perhaps we should, but it would warrant a separate investigation.

Now that I look at that, the most frequently accessed fields are not at 
the beginning or end of the struct, so I don't think there's much harm 
in sharing cache lines. And the really hot GetSnapshotData() function 
uses the "mirrored" arrays anyway.

- Heikki




Commits

  1. Fix pg_stat_get_backend_wait_event() for aux processes

  2. doc: Mention possible ephemeral discrepancies in pg_stat_activity

  3. Show more processes in pg_stat_activity.