]> granicus.if.org Git - postgresql/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:33:18 +0000 (12:33 +0300)
commitf87bf848067490fac09489b9be389539b340d1c5
tree7e8812f8ab0f3fad136c84592e7be83d1be6b805
parent40ad7822019a2cf8b9e0d5bd770490af7b56e652
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