Refactor some code related to backend statistics

Michael Paquier <michael@paquier.xyz>

Commit: 2c14037bb57c091b9f0bcbd36fa62138601beb55
Author: Michael Paquier <michael@paquier.xyz>
Date: 2025-01-10T00:00:48Z
Releases: 18.0
Refactor some code related to backend statistics

This commit changes the way pending backend statistics are tracked by
moving them into a new structure called PgStat_BackendPending, removing
PgStat_BackendPendingIO.  PgStat_BackendPending currently only includes
PgStat_PendingIO for the pending I/O stats.

pgstat_flush_backend() is extended with a "flags" argument to control
which parts of the stats of a backend should be flushed.

With this refactoring, it becomes easier to plug into backend statistics
more data.  A patch to add information related to WAL in this stats kind
is under discussion.

Author: Bertrand Drouvot
Discussion: https://postgr.es/m/Z3zqc4o09dM/Ezyz@ip-10-97-1-34.eu-west-3.compute.internal

Files

Discussion