From 8a7680657fb0b97cf8ff47bdb77144eaa6978339 Mon Sep 17 00:00:00 2001 From: Bharath Rupireddy Date: Thu, 26 Oct 2023 12:52:34 +0000 Subject: [PATCH v9] Count SLRU page flushes during checkpoint or database shutdown SLRU page flushes aren't counted during checkpoint or database shutdown in SlruSyncFileTag unlike flushes following page writes in SlruPhysicalWritePage. This commit fixes it by counting the SLRU flushes even in SlruSyncFileTag. Author: Bharath Rupireddy Reviewed-by: Michael Paquier Discussion: https://www.postgresql.org/message-id/ZTnIHhZiIPpEFLbL%40paquier.xyz --- src/backend/access/transam/slru.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/backend/access/transam/slru.c b/src/backend/access/transam/slru.c index 9ed24e1185..9802b9e1fb 100644 --- a/src/backend/access/transam/slru.c +++ b/src/backend/access/transam/slru.c @@ -1593,6 +1593,7 @@ SlruScanDirectory(SlruCtl ctl, SlruScanCallback callback, void *data) int SlruSyncFileTag(SlruCtl ctl, const FileTag *ftag, char *path) { + SlruShared shared = ctl->shared; int fd; int save_errno; int result; @@ -1611,5 +1612,9 @@ SlruSyncFileTag(SlruCtl ctl, const FileTag *ftag, char *path) CloseTransientFile(fd); errno = save_errno; + + /* update the stats counter of flushes */ + pgstat_count_slru_flush(shared->slru_stats_idx); + return result; } -- 2.34.1