<literal>NULL</literal> or is not specified, all the counters shown in
the <structname>pg_stat_slru</structname> view for all SLRU caches are
reset. The argument can be one of
- <literal>CommitTs</literal>,
- <literal>MultiXactMember</literal>,
- <literal>MultiXactOffset</literal>,
- <literal>Notify</literal>,
- <literal>Serial</literal>,
- <literal>Subtrans</literal>, or
- <literal>Xact</literal>
+ <literal>commit_timestamp</literal>,
+ <literal>multixact_member</literal>,
+ <literal>multixact_offset</literal>,
+ <literal>notify</literal>,
+ <literal>serializable</literal>,
+ <literal>subtransaction</literal>, or
+ <literal>transaction</literal>
to reset the counters for only that entry.
If the argument is <literal>other</literal> (or indeed, any
unrecognized name), then the counters for all other SLRU caches, such
CLOGShmemInit(void)
{
XactCtl->PagePrecedes = CLOGPagePrecedes;
- SimpleLruInit(XactCtl, "Xact", CLOGShmemBuffers(), CLOG_LSNS_PER_PAGE,
+ SimpleLruInit(XactCtl, "transaction", CLOGShmemBuffers(), CLOG_LSNS_PER_PAGE,
XactSLRULock, "pg_xact", LWTRANCHE_XACT_BUFFER,
SYNC_HANDLER_CLOG, false);
SlruPagePrecedesUnitTests(XactCtl, CLOG_XACTS_PER_PAGE);
bool found;
CommitTsCtl->PagePrecedes = CommitTsPagePrecedes;
- SimpleLruInit(CommitTsCtl, "CommitTs", CommitTsShmemBuffers(), 0,
+ SimpleLruInit(CommitTsCtl, "commit_timestamp", CommitTsShmemBuffers(), 0,
CommitTsSLRULock, "pg_commit_ts",
LWTRANCHE_COMMITTS_BUFFER,
SYNC_HANDLER_COMMIT_TS,
MultiXactMemberCtl->PagePrecedes = MultiXactMemberPagePrecedes;
SimpleLruInit(MultiXactOffsetCtl,
- "MultiXactOffset", NUM_MULTIXACTOFFSET_BUFFERS, 0,
+ "multixact_offset", NUM_MULTIXACTOFFSET_BUFFERS, 0,
MultiXactOffsetSLRULock, "pg_multixact/offsets",
LWTRANCHE_MULTIXACTOFFSET_BUFFER,
SYNC_HANDLER_MULTIXACT_OFFSET,
false);
SlruPagePrecedesUnitTests(MultiXactOffsetCtl, MULTIXACT_OFFSETS_PER_PAGE);
SimpleLruInit(MultiXactMemberCtl,
- "MultiXactMember", NUM_MULTIXACTMEMBER_BUFFERS, 0,
+ "multixact_member", NUM_MULTIXACTMEMBER_BUFFERS, 0,
MultiXactMemberSLRULock, "pg_multixact/members",
LWTRANCHE_MULTIXACTMEMBER_BUFFER,
SYNC_HANDLER_MULTIXACT_MEMBER,
SUBTRANSShmemInit(void)
{
SubTransCtl->PagePrecedes = SubTransPagePrecedes;
- SimpleLruInit(SubTransCtl, "Subtrans", NUM_SUBTRANS_BUFFERS, 0,
+ SimpleLruInit(SubTransCtl, "subtransaction", NUM_SUBTRANS_BUFFERS, 0,
SubtransSLRULock, "pg_subtrans",
LWTRANCHE_SUBTRANS_BUFFER, SYNC_HANDLER_NONE,
false);
* names are used in order to avoid wraparound.
*/
NotifyCtl->PagePrecedes = asyncQueuePagePrecedes;
- SimpleLruInit(NotifyCtl, "Notify", NUM_NOTIFY_BUFFERS, 0,
+ SimpleLruInit(NotifyCtl, "notify", NUM_NOTIFY_BUFFERS, 0,
NotifySLRULock, "pg_notify", LWTRANCHE_NOTIFY_BUFFER,
SYNC_HANDLER_NONE, true);
* Set up SLRU management of the pg_serial data.
*/
SerialSlruCtl->PagePrecedes = SerialPagePrecedesLogically;
- SimpleLruInit(SerialSlruCtl, "Serial",
+ SimpleLruInit(SerialSlruCtl, "serializable",
NUM_SERIAL_BUFFERS, 0, SerialSLRULock, "pg_serial",
LWTRANCHE_SERIAL_BUFFER, SYNC_HANDLER_NONE,
false);
* definitions.
*/
static const char *const slru_names[] = {
- "CommitTs",
- "MultiXactMember",
- "MultiXactOffset",
- "Notify",
- "Serial",
- "Subtrans",
- "Xact",
+ "commit_timestamp",
+ "multixact_member",
+ "multixact_offset",
+ "notify",
+ "serializable",
+ "subtransaction",
+ "transaction",
"other" /* has to be last */
};
(1 row)
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
(1 row)
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s2_big_notify: SELECT pg_notify('stats_test_use',
(1 row)
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s2_begin: BEGIN;
step s1_fetch_consistency_none: SET stats_fetch_consistency = 'none';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_cache: SET stats_fetch_consistency = 'cache';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_snapshot: SET stats_fetch_consistency = 'snapshot';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_none: SET stats_fetch_consistency = 'none';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_cache: SET stats_fetch_consistency = 'cache';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_snapshot: SET stats_fetch_consistency = 'snapshot';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_snapshot: SET stats_fetch_consistency = 'snapshot';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_snapshot: SET stats_fetch_consistency = 'snapshot';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
(1 row)
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
(1 row)
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s2_big_notify: SELECT pg_notify('stats_test_use',
(1 row)
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s2_begin: BEGIN;
step s1_fetch_consistency_none: SET stats_fetch_consistency = 'none';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_cache: SET stats_fetch_consistency = 'cache';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_snapshot: SET stats_fetch_consistency = 'snapshot';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_none: SET stats_fetch_consistency = 'none';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_cache: SET stats_fetch_consistency = 'cache';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_snapshot: SET stats_fetch_consistency = 'snapshot';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_snapshot: SET stats_fetch_consistency = 'snapshot';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
step s1_fetch_consistency_snapshot: SET stats_fetch_consistency = 'snapshot';
step s1_slru_save_stats:
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
step s1_listen: LISTEN stats_test_nothing;
step s1_begin: BEGIN;
# SLRU stats steps
step s1_slru_save_stats {
- INSERT INTO test_slru_stats VALUES('Notify', 'blks_zeroed',
- (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'Notify'));
+ INSERT INTO test_slru_stats VALUES('notify', 'blks_zeroed',
+ (SELECT blks_zeroed FROM pg_stat_slru WHERE name = 'notify'));
}
step s1_listen { LISTEN stats_test_nothing; }
step s1_big_notify { SELECT pg_notify('stats_test_use',
-- Test that resetting stats works for reset timestamp
-----
-- Test that reset_slru with a specified SLRU works.
-SELECT stats_reset AS slru_commit_ts_reset_ts FROM pg_stat_slru WHERE name = 'CommitTs' \gset
-SELECT stats_reset AS slru_notify_reset_ts FROM pg_stat_slru WHERE name = 'Notify' \gset
-SELECT pg_stat_reset_slru('CommitTs');
+SELECT stats_reset AS slru_commit_ts_reset_ts FROM pg_stat_slru WHERE name = 'commit_timestamp' \gset
+SELECT stats_reset AS slru_notify_reset_ts FROM pg_stat_slru WHERE name = 'notify' \gset
+SELECT pg_stat_reset_slru('commit_timestamp');
pg_stat_reset_slru
--------------------
(1 row)
-SELECT stats_reset > :'slru_commit_ts_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'CommitTs';
+SELECT stats_reset > :'slru_commit_ts_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'commit_timestamp';
?column?
----------
t
(1 row)
-SELECT stats_reset AS slru_commit_ts_reset_ts FROM pg_stat_slru WHERE name = 'CommitTs' \gset
+SELECT stats_reset AS slru_commit_ts_reset_ts FROM pg_stat_slru WHERE name = 'commit_timestamp' \gset
-- Test that multiple SLRUs are reset when no specific SLRU provided to reset function
SELECT pg_stat_reset_slru();
pg_stat_reset_slru
(1 row)
-SELECT stats_reset > :'slru_commit_ts_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'CommitTs';
+SELECT stats_reset > :'slru_commit_ts_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'commit_timestamp';
?column?
----------
t
(1 row)
-SELECT stats_reset > :'slru_notify_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'Notify';
+SELECT stats_reset > :'slru_notify_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'notify';
?column?
----------
t
-----
-- Test that reset_slru with a specified SLRU works.
-SELECT stats_reset AS slru_commit_ts_reset_ts FROM pg_stat_slru WHERE name = 'CommitTs' \gset
-SELECT stats_reset AS slru_notify_reset_ts FROM pg_stat_slru WHERE name = 'Notify' \gset
-SELECT pg_stat_reset_slru('CommitTs');
-SELECT stats_reset > :'slru_commit_ts_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'CommitTs';
-SELECT stats_reset AS slru_commit_ts_reset_ts FROM pg_stat_slru WHERE name = 'CommitTs' \gset
+SELECT stats_reset AS slru_commit_ts_reset_ts FROM pg_stat_slru WHERE name = 'commit_timestamp' \gset
+SELECT stats_reset AS slru_notify_reset_ts FROM pg_stat_slru WHERE name = 'notify' \gset
+SELECT pg_stat_reset_slru('commit_timestamp');
+SELECT stats_reset > :'slru_commit_ts_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'commit_timestamp';
+SELECT stats_reset AS slru_commit_ts_reset_ts FROM pg_stat_slru WHERE name = 'commit_timestamp' \gset
-- Test that multiple SLRUs are reset when no specific SLRU provided to reset function
SELECT pg_stat_reset_slru();
-SELECT stats_reset > :'slru_commit_ts_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'CommitTs';
-SELECT stats_reset > :'slru_notify_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'Notify';
+SELECT stats_reset > :'slru_commit_ts_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'commit_timestamp';
+SELECT stats_reset > :'slru_notify_reset_ts'::timestamptz FROM pg_stat_slru WHERE name = 'notify';
-- Test that reset_shared with archiver specified as the stats type works
SELECT stats_reset AS archiver_reset_ts FROM pg_stat_archiver \gset