From d57655ca788b266f6ffab5fdf27aaf007803b415 Mon Sep 17 00:00:00 2001
From: Nitin Jadhav <nitinjadhav@microsoft.com>
Date: Wed, 14 Dec 2022 07:22:46 +0000
Subject: [PATCH] Fix inconsistency in checkpointer stats

The buffers written information exposed using pg_stat_bgwriter view is having
inconsistent data compared to the checkpoint complete log message. So
incremented the counter in SlruInternalWritePage() to fix the inconsistency.
---
 src/backend/access/transam/slru.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/backend/access/transam/slru.c b/src/backend/access/transam/slru.c
index 6feda87f57..bddc32c82f 100644
--- a/src/backend/access/transam/slru.c
+++ b/src/backend/access/transam/slru.c
@@ -605,6 +605,7 @@ SlruInternalWritePage(SlruCtl ctl, int slotno, SlruWriteAll fdata)
 	/* If part of a checkpoint, count this as a buffer written. */
 	if (fdata)
 		CheckpointStats.ckpt_bufs_written++;
+		PendingCheckpointerStats.buf_written_checkpoints++;
 }
 
 /*
-- 
2.25.1

