Re: buffer assertion tripping under repeat pgbench load

Greg Smith <greg@2ndquadrant.com>

From: Greg Smith <greg@2ndQuadrant.com>
To: "anarazel@anarazel.de" <andres@anarazel.de>
Cc: Tom Lane <tgl@sss.pgh.pa.us>, Simon Riggs <simon@2ndQuadrant.com>, Andres Freund <andres@2ndQuadrant.com>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2012-12-26T19:37:45Z
Lists: pgsql-hackers
On 12/26/12 1:58 PM, anarazel@anarazel.de wrote:

> I don't think its necessarily only one buffer - if I read the above output correctly Greg used the suggested debug output which just put the elog(WARN) before the Assert...
>
> Greg, could you output all "bad" buffers and only assert after the loop if there was at least one refcounted buffer?

I've been doing that for a while, the only thing that's new is getting 
the block number.  It's only ever been one buffer involved.

-- 
Greg Smith   2ndQuadrant US    greg@2ndQuadrant.com   Baltimore, MD
PostgreSQL Training, Services, and 24x7 Support www.2ndQuadrant.com


Commits

  1. Follow TLI of last replayed record, not recovery target TLI, in walsenders.

  2. Avoid holding vmbuffer pin after VACUUM.