pgsql: pgstat: add pg_stat_force_next_flush(), use it to simplify tests - Mailing list pgsql-committers

From Andres Freund
Subject pgsql: pgstat: add pg_stat_force_next_flush(), use it to simplify tests
Date
Msg-id E1ncLo9-000hDA-2L@gemulon.postgresql.org
Whole thread Raw
List pgsql-committers
pgstat: add pg_stat_force_next_flush(), use it to simplify tests.

In the stats collector days it was hard to write tests for the stats system,
because fundamentally delivery of stats messages over UDP was not
synchronous (nor guaranteed). Now we easily can force pending stats updates to
be flushed synchronously.

This moves stats.sql into a parallel group, there isn't a reason for it to run
in isolation anymore. And it may shake out some bugs.

Bumps catversion.

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/0f96965c658147d6d6bad096d2d4a2c9c665f4a9

Modified Files
--------------
contrib/test_decoding/expected/stats.out |  71 +++---------------
contrib/test_decoding/sql/stats.sql      |  59 ++-------------
src/backend/utils/activity/pgstat.c      |  23 ++++++
src/backend/utils/adt/pgstatfuncs.c      |  10 +++
src/include/catalog/pg_proc.dat          |   5 ++
src/include/pgstat.h                     |   1 +
src/test/regress/expected/brin.out       |  22 ++++++
src/test/regress/expected/stats.out      | 123 +------------------------------
src/test/regress/parallel_schedule       |   5 +-
src/test/regress/sql/brin.sql            |  19 +++++
src/test/regress/sql/stats.sql           | 119 +-----------------------------
11 files changed, 103 insertions(+), 354 deletions(-)


pgsql-committers by date:

Previous
From: Andres Freund
Date:
Subject: Re: pgsql: pgstat: store statistics in shared memory.
Next
From: John Naylor
Date:
Subject: Re: pgsql: pgstat: add pg_stat_force_next_flush(), use it to simplify tests