Re: per backend I/O statistics

Bertrand Drouvot <bertranddrouvot.pg@gmail.com>

From: Bertrand Drouvot <bertranddrouvot.pg@gmail.com>
To: Michael Paquier <michael@paquier.xyz>
Cc: Andres Freund <andres@anarazel.de>, Nazir Bilal Yavuz <byavuz81@gmail.com>, Alvaro Herrera <alvherre@alvh.no-ip.org>, Kyotaro Horiguchi <horikyota.ntt@gmail.com>, pgsql-hackers@lists.postgresql.org
Date: 2025-01-17T06:06:35Z
Lists: pgsql-hackers
Hi,

On Fri, Jan 17, 2025 at 09:08:02AM +0900, Michael Paquier wrote:
> Anyway, let's just switch pgstat_backend.c so as we use a static
> PgStat_BackendPending (pending name) to store the pending IO stats
> that could be reused for also the WAL bits.  It does not seem that
> complicated as far as I can see, removing pgstat_prep_backend_pending
> and changing pgstat_flush_backend_entry_io to use the static pending
> data.  The patch set posted here is doing that within its
> pgstat_flush_backend_entry_wal():
> https://www.postgresql.org/message-id/Z4DrFhdlO6Xf13Xd@ip-10-97-1-34.eu-west-3.compute.internal
> 
> I could tweak that around the beginning of next week with a proposal
> of patch.  Bertrand, perhaps you'd prefer hack on this one?

Yeah, I had in mind to work on it (in the exact same line as you are describing
above). I'll work on it.

Regards,

-- 
Bertrand Drouvot
PostgreSQL Contributors Team
RDS Open Source Databases
Amazon Web Services: https://aws.amazon.com



Commits

  1. Rework handling of pending data for backend statistics

  2. Rename some pgstats callbacks related to flush of entries

  3. Relax regression test for fsync check of backend-level stats

  4. Add backend-level statistics to pgstats

  5. Extract logic filling pg_stat_get_io()'s tuplestore into its own routine

  6. Tweak some comments related to variable-numbered stats in pgstat.c