From 00713939d3fe41c405ba989a9a3f5bbb13fb015c Mon Sep 17 00:00:00 2001 From: Rafia Sabih Date: Thu, 4 Dec 2025 19:05:05 +0100 Subject: [PATCH] Add WAIT_EVENT for CommitDelay --- src/backend/access/transam/xlog.c | 2 ++ src/backend/utils/activity/wait_event_names.txt | 1 + 2 files changed, 3 insertions(+) diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c index 22d0a2e8c3a..76a3a875679 100644 --- a/src/backend/access/transam/xlog.c +++ b/src/backend/access/transam/xlog.c @@ -2884,7 +2884,9 @@ XLogFlush(XLogRecPtr record) if (CommitDelay > 0 && enableFsync && MinimumActiveBackends(CommitSiblings)) { + pgstat_report_wait_start(WAIT_EVENT_COMMIT_DELAY); pg_usleep(CommitDelay); + pgstat_report_wait_end(); /* * Re-check how far we can now flush the WAL. It's generally not diff --git a/src/backend/utils/activity/wait_event_names.txt b/src/backend/utils/activity/wait_event_names.txt index 1e5e368a5dc..a0130105fe1 100644 --- a/src/backend/utils/activity/wait_event_names.txt +++ b/src/backend/utils/activity/wait_event_names.txt @@ -180,6 +180,7 @@ RECOVERY_APPLY_DELAY "Waiting to apply WAL during recovery because of a delay se RECOVERY_RETRIEVE_RETRY_INTERVAL "Waiting during recovery when WAL data is not available from any source (pg_wal, archive or stream)." REGISTER_SYNC_REQUEST "Waiting while sending synchronization requests to the checkpointer, because the request queue is full." SPIN_DELAY "Waiting while acquiring a contended spinlock." +COMMIT_DELAY "Waiting while pre commit." VACUUM_DELAY "Waiting in a cost-based vacuum delay point." VACUUM_TRUNCATE "Waiting to acquire an exclusive lock to truncate off any empty pages at the end of a table vacuumed." WAL_SUMMARIZER_ERROR "Waiting after a WAL summarizer error." -- 2.39.5 (Apple Git-154)