Fujii Masao wrote:
Hi,

On Wed, Dec 17, 2008 at 4:53 AM, Robert Lor <robert....@sun.com> wrote:
@@ -1313,12 +1318,14 @@ AdvanceXLInsertBuffer(bool new_segment)
                                * Have to write buffers while holding insert
lock. This is
                                * not good, so only write as much as we
absolutely must.
                                */
+                               TRACE_POSTGRESQL_WAL_BUFFER_WRITE_START();
                               WriteRqst.Write = OldPageRqstPtr;
                               WriteRqst.Flush.xlogid = 0;
                               WriteRqst.Flush.xrecoff = 0;
                               XLogWrite(WriteRqst, false, false);
                               LWLockRelease(WALWriteLock);
                               Insert->LogwrtResult = LogwrtResult;
+                               TRACE_POSTGRESQL_WAL_BUFFER_WRITE_DONE();

Why is TRACE_POSTGRESQL_WAL_BUFFER_WRITE_START/DONE called
only in AdvanceXLInsertBuffer? We can trace only a part of WAL buffer write?

The intention of these probes is to determine if wal_buffers is too small by monitoring how frequent the server has to write out the buffers along with the I/O time.

-Robert



--
Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers

Reply via email to