From: | Thomas Munro <thomas(dot)munro(at)enterprisedb(dot)com> |
---|---|
To: | Pg Hackers <pgsql-hackers(at)postgresql(dot)org> |
Subject: | EXPLAIN (ANALYZE, BUFFERS) reports bogus temporary buffer reads |
Date: | 2017-10-16 20:59:32 |
Message-ID: | CAEepm=21xgihg=WaG+O5MFotEZfN6kFETpfw+RkSnEqNQqGn2Q@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-hackers |
Hi hackers,
Vik Fearing asked off-list why hash joins appear to read slightly more
temporary data than they write. The reason is that we notch up a
phantom block read when we hit the end of each file. Harmless but it
looks a bit weird and it's easily fixed.
Unpatched, a 16 batch hash join reports that we read 30 more blocks
than we wrote (2 per batch after the first, as expected):
Buffers: shared hit=434 read=16234, temp read=5532 written=5502
With the attached patch:
Buffers: shared hit=547 read=16121, temp read=5502 written=5502
--
Thomas Munro
http://www.enterprisedb.com
Attachment | Content-Type | Size |
---|---|---|
0001-Don-t-count-EOF-as-a-temporary-buffer-read-in-EXPLAI.patch | application/octet-stream | 996 bytes |
From | Date | Subject | |
---|---|---|---|
Next Message | Peter Eisentraut | 2017-10-16 20:59:59 | Re: Is it time to kill support for very old servers? |
Previous Message | Peter Eisentraut | 2017-10-16 20:54:19 | Re: coverage analysis improvements |