WAL format changes break the suppression of do-nothing checkpoints.

From: Jeff Janes <jeff(dot)janes(at)gmail(dot)com>
To: pgsql-hackers <pgsql-hackers(at)postgresql(dot)org>
Subject: WAL format changes break the suppression of do-nothing checkpoints.
Date: 2015-03-30 18:01:52
Message-ID: CAMkU=1yTyPkuM=JvKszDjHsxYmnwCoLBxJVqmY3KXujym-0OLw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

commit 2c03216d831160bedd72d45f7 has invalidated the part of the docs
saying "If no WAL has been written since the previous checkpoint, new
checkpoints will be skipped even if checkpoint_timeout has passed",
presumably by accident.

It seems that this part is no longer true when it should be true:

if (curInsert == ControlFile->checkPoint +
MAXALIGN(SizeOfXLogRecord + sizeof(CheckPoint))

MAXALIGN(SizeOfXLogRecord + sizeof(CheckPoint) is now 96, but the amount by
which curInsert gets advanced is still 104, like it was before the commit.

Cheers,

Jeff

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Joshua D. Drake 2015-03-30 18:50:48 Bug #10432 failed to re-find parent key in index
Previous Message Peter Geoghegan 2015-03-30 16:20:43 Re: INSERT ... ON CONFLICT IGNORE (and UPDATE) 3.0