From 71bcf31a76e56502086e5b60cfbfba5e9c64cb23 Mon Sep 17 00:00:00 2001 From: Bharath Rupireddy Date: Mon, 30 Oct 2023 06:27:11 +0000 Subject: [PATCH v1] Add test for resetting recovery_prefetch shared stats This commit adds test for resetting recovery_prefetch shared stats to help with the code coverage of XLogPrefetchResetStats(). --- src/test/regress/expected/stats.out | 21 +++++++++++++++++++++ src/test/regress/sql/stats.sql | 7 +++++++ 2 files changed, 28 insertions(+) diff --git a/src/test/regress/expected/stats.out b/src/test/regress/expected/stats.out index 53b632dcd3..65997334be 100644 --- a/src/test/regress/expected/stats.out +++ b/src/test/regress/expected/stats.out @@ -960,6 +960,21 @@ SELECT stats_reset > :'wal_reset_ts'::timestamptz FROM pg_stat_wal; (1 row) SELECT stats_reset AS wal_reset_ts FROM pg_stat_wal \gset +-- Test that reset_shared with recovery_prefetch specified as the stats type works +SELECT stats_reset AS recovery_prefetch_reset_ts FROM pg_stat_recovery_prefetch \gset +SELECT pg_stat_reset_shared('recovery_prefetch'); + pg_stat_reset_shared +---------------------- + +(1 row) + +SELECT stats_reset > :'recovery_prefetch_reset_ts'::timestamptz FROM pg_stat_recovery_prefetch; + ?column? +---------- + t +(1 row) + +SELECT stats_reset AS recovery_prefetch_reset_ts FROM pg_stat_recovery_prefetch \gset -- Test that reset_shared with no specified stats type doesn't reset anything SELECT pg_stat_reset_shared(NULL); pg_stat_reset_shared @@ -991,6 +1006,12 @@ SELECT stats_reset = :'wal_reset_ts'::timestamptz FROM pg_stat_wal; t (1 row) +SELECT stats_reset = :'recovery_prefetch_reset_ts'::timestamptz FROM pg_stat_recovery_prefetch; + ?column? +---------- + t +(1 row) + -- Test error case for reset_shared with unknown stats type SELECT pg_stat_reset_shared('unknown'); ERROR: unrecognized reset target: "unknown" diff --git a/src/test/regress/sql/stats.sql b/src/test/regress/sql/stats.sql index febb83add0..498e32de7a 100644 --- a/src/test/regress/sql/stats.sql +++ b/src/test/regress/sql/stats.sql @@ -482,12 +482,19 @@ SELECT pg_stat_reset_shared('wal'); SELECT stats_reset > :'wal_reset_ts'::timestamptz FROM pg_stat_wal; SELECT stats_reset AS wal_reset_ts FROM pg_stat_wal \gset +-- Test that reset_shared with recovery_prefetch specified as the stats type works +SELECT stats_reset AS recovery_prefetch_reset_ts FROM pg_stat_recovery_prefetch \gset +SELECT pg_stat_reset_shared('recovery_prefetch'); +SELECT stats_reset > :'recovery_prefetch_reset_ts'::timestamptz FROM pg_stat_recovery_prefetch; +SELECT stats_reset AS recovery_prefetch_reset_ts FROM pg_stat_recovery_prefetch \gset + -- Test that reset_shared with no specified stats type doesn't reset anything SELECT pg_stat_reset_shared(NULL); SELECT stats_reset = :'archiver_reset_ts'::timestamptz FROM pg_stat_archiver; SELECT stats_reset = :'bgwriter_reset_ts'::timestamptz FROM pg_stat_bgwriter; SELECT stats_reset = :'checkpointer_reset_ts'::timestamptz FROM pg_stat_checkpointer; SELECT stats_reset = :'wal_reset_ts'::timestamptz FROM pg_stat_wal; +SELECT stats_reset = :'recovery_prefetch_reset_ts'::timestamptz FROM pg_stat_recovery_prefetch; -- Test error case for reset_shared with unknown stats type SELECT pg_stat_reset_shared('unknown'); -- 2.34.1