pgsql: pgstat: split different types of stats into separate files. - Mailing list pgsql-committers

From Andres Freund
Subject pgsql: pgstat: split different types of stats into separate files.
Date
Msg-id E1nWNLx-000kz9-Nt@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
pgstat: split different types of stats into separate files.

pgstat.c is very long, and it's hard to find an order that makes sense and is
likely to be maintained over time. Splitting the different pieces into
separate files makes that a lot easier.

With a few exceptions, this commit just moves code around. Those exceptions
are:
- adding file headers for new files
- removing 'static' from functions
- adapting pgstat_assert_is_up() to work across TUs
- minor comment adjustments
git diff --color-moved=dimmed-zebra is very helpful separating code movement
from code changes.

The next commit in this series will reorder pgstat.[ch] contents to be a bit
more coherent.

Earlier revisions of this patch had "global" statistics (archiver, bgwriter,
checkpointer, replication slots, SLRU, WAL) in one file, because each seemed
small enough. However later commits will increase their size and their
aggregate size is not insubstantial. It also just seems easier to split each
type of statistic into its own file.

Author: Andres Freund <andres@anarazel.de>
Discussion: https://postgr.es/m/20220303021600.hs34ghqcw6zcokdh@alap3.anarazel.de

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/13619598f1080d7923454634a2570ca1bc0f2fec

Modified Files
--------------
src/backend/postmaster/pgstat.c                  | 2113 +---------------------
src/backend/utils/activity/Makefile              |   10 +
src/backend/utils/activity/pgstat_archiver.c     |   44 +
src/backend/utils/activity/pgstat_bgwriter.c     |   63 +
src/backend/utils/activity/pgstat_checkpointer.c |   61 +
src/backend/utils/activity/pgstat_database.c     |  279 +++
src/backend/utils/activity/pgstat_function.c     |  225 +++
src/backend/utils/activity/pgstat_relation.c     |  935 ++++++++++
src/backend/utils/activity/pgstat_replslot.c     |  119 ++
src/backend/utils/activity/pgstat_slru.c         |  201 ++
src/backend/utils/activity/pgstat_subscription.c |   78 +
src/backend/utils/activity/pgstat_wal.c          |  159 ++
src/include/utils/pgstat_internal.h              |  161 ++
13 files changed, 2408 insertions(+), 2040 deletions(-)


pgsql-committers by date:

Previous
From: Tom Lane
Date:
Subject: pgsql: Fix bogus dependency handling for GENERATED expressions.
Next
From: Tom Lane
Date:
Subject: pgsql: Fix assorted missing logic for GroupingFunc nodes.