hash: Immediately after a bucket split, try to clean the old bucket.

Robert Haas <rhaas@postgresql.org>

Commit: ff98a5e1e49de061600feb6b4de5ce0a22d386af
Author: Robert Haas <rhaas@postgresql.org>
Date: 2017-08-04T23:33:01Z
Releases: 10.0
hash: Immediately after a bucket split, try to clean the old bucket.

If it works, then we won't be storing two copies of all the tuples
that were just moved.  If not, VACUUM will still take care of it
eventually.  Per a report from AP and analysis from Amit Kapila, it
seems that a bulk load can cause splits fast enough that VACUUM won't
deal with the problem in time to prevent bloat.

Amit Kapila; I rewrote the comment.

Discussion: http://postgr.es/m/20170704105728.mwb72jebfmok2nm2@zip.com.au

Files

PathChange+/−
src/backend/access/hash/hashpage.c modified +34 −11

Discussion