Re: DTrace probes patch
От | Robert Lor |
---|---|
Тема | Re: DTrace probes patch |
Дата | |
Msg-id | 494FC1DD.1090308@sun.com обсуждение исходный текст |
Ответ на | Re: DTrace probes patch (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: DTrace probes patch
|
Список | pgsql-hackers |
Tom Lane wrote: > Robert Lor <Robert.Lor@Sun.COM> writes: > >> Tom Lane wrote: >> >>> I agree. If the probe is meant to track only *some* WAL writes >>> then it needs to be named something less generic than >>> TRACE_POSTGRESQL_WAL_BUFFER_WRITE. >>> >>> >> How about change it to TRACE_POSTGRESQL_WAL_BUFFER_WRITE_DIRTY similar to TRACE_POSTGRESQL_BUFFER_WRITE_DIRTY for sharedbuffers? >> > > Works for me... > > Attached is the patch for the above name change. -Robert Index: src/backend/access/transam/xlog.c =================================================================== RCS file: /projects/cvsroot/pgsql/src/backend/access/transam/xlog.c,v retrieving revision 1.324 diff -u -3 -p -r1.324 xlog.c --- src/backend/access/transam/xlog.c 17 Dec 2008 01:39:03 -0000 1.324 +++ src/backend/access/transam/xlog.c 22 Dec 2008 16:28:00 -0000 @@ -1318,14 +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(); + TRACE_POSTGRESQL_WAL_BUFFER_WRITE_DIRTY_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(); + TRACE_POSTGRESQL_WAL_BUFFER_WRITE_DIRTY_DONE(); } } } Index: src/backend/utils/probes.d =================================================================== RCS file: /projects/cvsroot/pgsql/src/backend/utils/probes.d,v retrieving revision 1.4 diff -u -3 -p -r1.4 probes.d --- src/backend/utils/probes.d 17 Dec 2008 01:39:04 -0000 1.4 +++ src/backend/utils/probes.d 22 Dec 2008 16:28:01 -0000 @@ -89,6 +89,6 @@ provider postgresql { probe xlog__insert(unsigned char, unsigned char); probe xlog__switch(); - probe wal__buffer__write__start(); - probe wal__buffer__write__done(); + probe wal__buffer__write__dirty__start(); + probe wal__buffer__write__dirty__done(); };
В списке pgsql-hackers по дате отправления: