]> git.ipfire.org Git - thirdparty/postgresql.git/commit
Reuse all-zero pages in GIN.
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>
Mon, 27 Jul 2015 09:30:26 +0000 (12:30 +0300)
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>
Mon, 27 Jul 2015 09:32:30 +0000 (12:32 +0300)
commitbafe3b00730184e7f9860cbab545f8b21c1dc70b
tree7ccf3bd32d6980f5243a6878e023e887e5e24de7
parent863af3a3797a3a8ca19c9bdd57c5f5b538e04e22
Reuse all-zero pages in GIN.

In GIN, an all-zeros page would be leaked forever, and never reused. Just
add them to the FSM in vacuum, and they will be reinitialized when grabbed
from the FSM. On master and 9.5, attempting to access the page's opaque
struct also caused an assertion failure, although that was otherwise
harmless.

Reported by Jeff Janes. Backpatch to all supported versions.
src/backend/access/gin/ginvacuum.c