From ef5aa196aff618585c9cb1466623c8207a643713 Mon Sep 17 00:00:00 2001 From: Andres Freund Date: Fri, 17 Feb 2023 18:21:57 -0800 Subject: [PATCH v5 05/14] bufmgr: Remove buffer-write-dirty tracepoints The trace point was using the relfileno / fork / block for the to-be-read-in buffer. Some upcoming work would make that more expensive to provide. We still have buffer-flush-start/done, which can serve most tracing needs that buffer-write-dirty could serve. Author: Reviewed-by: Discussion: https://postgr.es/m/ Backpatch: --- src/backend/storage/buffer/bufmgr.c | 10 ---------- doc/src/sgml/monitoring.sgml | 17 ----------------- 2 files changed, 27 deletions(-) diff --git a/src/backend/storage/buffer/bufmgr.c b/src/backend/storage/buffer/bufmgr.c index 6f50dbd212e..3d0683593fd 100644 --- a/src/backend/storage/buffer/bufmgr.c +++ b/src/backend/storage/buffer/bufmgr.c @@ -1277,21 +1277,11 @@ BufferAlloc(SMgrRelation smgr, char relpersistence, ForkNumber forkNum, } /* OK, do the I/O */ - TRACE_POSTGRESQL_BUFFER_WRITE_DIRTY_START(forkNum, blockNum, - smgr->smgr_rlocator.locator.spcOid, - smgr->smgr_rlocator.locator.dbOid, - smgr->smgr_rlocator.locator.relNumber); - FlushBuffer(buf, NULL, IOOBJECT_RELATION, *io_context); LWLockRelease(BufferDescriptorGetContentLock(buf)); ScheduleBufferTagForWriteback(&BackendWritebackContext, &buf->tag); - - TRACE_POSTGRESQL_BUFFER_WRITE_DIRTY_DONE(forkNum, blockNum, - smgr->smgr_rlocator.locator.spcOid, - smgr->smgr_rlocator.locator.dbOid, - smgr->smgr_rlocator.locator.relNumber); } else { diff --git a/doc/src/sgml/monitoring.sgml b/doc/src/sgml/monitoring.sgml index c809ff1ba4a..b2ccd8d7fef 100644 --- a/doc/src/sgml/monitoring.sgml +++ b/doc/src/sgml/monitoring.sgml @@ -7806,23 +7806,6 @@ FROM pg_stat_get_backend_idset() AS backendid; it's typically not actually been written to disk yet.) The arguments are the same as for buffer-flush-start. - - buffer-write-dirty-start - (ForkNumber, BlockNumber, Oid, Oid, Oid) - Probe that fires when a server process begins to write a dirty - buffer. (If this happens often, it implies that - is too - small or the background writer control parameters need adjustment.) - arg0 and arg1 contain the fork and block numbers of the page. - arg2, arg3, and arg4 contain the tablespace, database, and relation OIDs - identifying the relation. - - - buffer-write-dirty-done - (ForkNumber, BlockNumber, Oid, Oid, Oid) - Probe that fires when a dirty-buffer write is complete. - The arguments are the same as for buffer-write-dirty-start. - wal-buffer-write-dirty-start () -- 2.38.0