On Thu, Oct 6, 2011 at 12:44 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
> Robert Haas <robertmhaas@gmail.com> writes:
>> I'm not entirely sure I understand the rationale, though. I mean, if
>> very little has happened since the last checkpoint, then the
>> checkpoint will be very cheap. In the totally degenerate case Fujii
>> Masao is reporting, where absolutely nothing has happened, it should
>> be basically free. We'll loop through a whole bunch of things, decide
>> there's nothing to fsync, and call it a day.
>
> I think the point is that a totally idle database should not continue to
> emit WAL, not even at a slow rate. There are also power-consumption
> objections to allowing the checkpoint process to fire up to no purpose.
Hmm, OK. I still think it's a little funny to say that
checkpoint_timeout will force a checkpoint every N minutes except when
it doesn't, but maybe there's no real harm in that as long as we
document it properly.
--
Robert Haas
EnterpriseDB: http://www.enterprisedb.com
The Enterprise PostgreSQL Company