Greg Smith wrote:
> One tiny change I'd suggest here:  if you look at the code for checkpoint 
> buffer writing there are traces for two points in the process:
>
>  CheckPointBuffers(int flags)
>  {
> +       TRACE_POSTGRESQL_BUFFER_CHECKPOINT_START(flags);
>         CheckpointStats.ckpt_write_t = GetCurrentTimestamp();
>         BufferSync(flags);
>         CheckpointStats.ckpt_sync_t = GetCurrentTimestamp();
>         smgrsync();
>         CheckpointStats.ckpt_sync_end_t = GetCurrentTimestamp();
> +       TRACE_POSTGRESQL_BUFFER_CHECKPOINT_DONE();
>  }
>
> Note how the existing code also tracks how long the sync phase took  
> compared to the write one, and reports both numbers in the checkpoint  
> logs.  It would be nice to add another probe at that same point (just  
> after ckpt_sync_t is set) so that dtrace users could instrument all these 
> possibilities as well:  just buffer write time/resources, just sync ones, 
> or both.

Sounds like the thing to do would be to pass CheckpointStats into the
DONE probe.

-- 
Alvaro Herrera                                http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

-- 
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