Re: Accounting of zero-filled buffers in EXPLAIN (BUFFERS)

Andres Freund <andres@anarazel.de>

From: Andres Freund <andres@anarazel.de>
To: Thomas Munro <thomas.munro@enterprisedb.com>
Cc: Pg Hackers <pgsql-hackers@postgresql.org>
Date: 2018-04-30T03:13:18Z
Lists: pgsql-hackers
On 2018-04-30 14:59:31 +1200, Thomas Munro wrote:
> Hi,
> 
> In EXPLAIN (BUFFERS), there are two kinds of cache misses that show up
> as "reads" when in fact they are not reads at all:
> 
> 1.  Relation extension, which in fact writes a zero-filled block.
> 2.  The RBM_ZERO_* modes, which provoke neither read nor write.

Just for understanding: 2) can never happen for buffers showing up in
EXPLAIN, right?

I'm not saying you shouldn't fix the accounting...

Greetings,

Andres Freund


Commits

  1. Don't count zero-filled buffers as 'read' in EXPLAIN.