diff options
author | Fujii Masao | 2024-09-30 02:56:05 +0000 |
---|---|---|
committer | Fujii Masao | 2024-09-30 02:56:05 +0000 |
commit | 559efce1d684069acf234a5cb032acba84e70938 (patch) | |
tree | 81fe6e80393961f50c21a0ffb472acdfcfc5a096 /src/include | |
parent | 20cfec896c6a20ca436f634b0ffa3582d7b9425c (diff) |
Add num_done counter to the pg_stat_checkpointer view.
Checkpoints can be skipped when the server is idle. The existing num_timed and
num_requested counters in pg_stat_checkpointer track both completed and
skipped checkpoints, but there was no way to count only the completed ones.
This commit introduces the num_done counter, which tracks only completed
checkpoints, making it easier to see how many were actually performed.
Bump catalog version.
Author: Anton A. Melnikov
Reviewed-by: Fujii Masao
Discussion: https://postgr.es/m/9ea77f40-818d-4841-9dee-158ac8f6e690@oss.nttdata.com
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/access/xlog.h | 2 | ||||
-rw-r--r-- | src/include/catalog/catversion.h | 2 | ||||
-rw-r--r-- | src/include/catalog/pg_proc.dat | 5 | ||||
-rw-r--r-- | src/include/pgstat.h | 1 |
4 files changed, 8 insertions, 2 deletions
diff --git a/src/include/access/xlog.h b/src/include/access/xlog.h index 083810f5b4c..36f6e4e4b4e 100644 --- a/src/include/access/xlog.h +++ b/src/include/access/xlog.h @@ -239,7 +239,7 @@ extern void LocalProcessControlFile(bool reset); extern WalLevel GetActiveWalLevelOnStandby(void); extern void StartupXLOG(void); extern void ShutdownXLOG(int code, Datum arg); -extern void CreateCheckPoint(int flags); +extern bool CreateCheckPoint(int flags); extern bool CreateRestartPoint(int flags); extern WALAvailability GetWALAvailability(XLogRecPtr targetLSN); extern void XLogPutNextOid(Oid nextOid); diff --git a/src/include/catalog/catversion.h b/src/include/catalog/catversion.h index ba4f8641ac6..7656714b701 100644 --- a/src/include/catalog/catversion.h +++ b/src/include/catalog/catversion.h @@ -57,6 +57,6 @@ */ /* yyyymmddN */ -#define CATALOG_VERSION_NO 202409271 +#define CATALOG_VERSION_NO 202409301 #endif diff --git a/src/include/catalog/pg_proc.dat b/src/include/catalog/pg_proc.dat index 322114d72a7..05fcbf75156 100644 --- a/src/include/catalog/pg_proc.dat +++ b/src/include/catalog/pg_proc.dat @@ -5820,6 +5820,11 @@ proname => 'pg_stat_get_checkpointer_num_requested', provolatile => 's', proparallel => 'r', prorettype => 'int8', proargtypes => '', prosrc => 'pg_stat_get_checkpointer_num_requested' }, +{ oid => '8599', + descr => 'statistics: number of checkpoints performed by the checkpointer', + proname => 'pg_stat_get_checkpointer_num_performed', provolatile => 's', + proparallel => 'r', prorettype => 'int8', proargtypes => '', + prosrc => 'pg_stat_get_checkpointer_num_performed' }, { oid => '6327', descr => 'statistics: number of timed restartpoints started by the checkpointer', proname => 'pg_stat_get_checkpointer_restartpoints_timed', provolatile => 's', diff --git a/src/include/pgstat.h b/src/include/pgstat.h index 4752dfe7197..476acd680c0 100644 --- a/src/include/pgstat.h +++ b/src/include/pgstat.h @@ -294,6 +294,7 @@ typedef struct PgStat_CheckpointerStats { PgStat_Counter num_timed; PgStat_Counter num_requested; + PgStat_Counter num_performed; PgStat_Counter restartpoints_timed; PgStat_Counter restartpoints_requested; PgStat_Counter restartpoints_performed; |