Simon Riggs <simon@2ndQuadrant.com> writes:
> The current idea is that if there has been no activity then we skip
> checkpoint. But all it takes is a single WAL record and off we go with
> another checkpoint. If there hasn't been much WAL activity, there is
> not much point in having another checkpoint record since there is
> little if any time to be saved in recovery.
> So why not avoid checkpoints until we have written at least 1 WAL file
> worth of data?
+1, but I think you need to compare to the last checkpoint's REDO
pointer, not to the position of the checkpoint record itself.
Otherwise, the argument falls down if there was a lot of activity
during the last checkpoint (which is not unlikely in these days of
spread checkpoints).
Also I think the comment needs more extensive revision than you gave it.
regards, tom lane