summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2015-07-27 18:54:09 +0300
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2015-07-27 18:54:30 +0300
commit0e98ad0915ce5a665f39707db7652c67a64b5b22 (patch)
tree51f3391a9d5c3a69ab40e74f132faac53f2daa54
parent746e7f1c187b1dae02b049b1918e5471d7fedfb6 (diff)
Don't assume that PageIsEmpty() returns true on an all-zeros page.
It does currently, and I don't see us changing that any time soon, but we don't make that assumption anywhere else. Per Tom Lane's suggestion. Backpatch to 9.2, like the previous patch that added this assumption.
-rw-r--r--src/backend/access/spgist/spgvacuum.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/backend/access/spgist/spgvacuum.c b/src/backend/access/spgist/spgvacuum.c
index 9033a9df35f..c0fff4c6b80 100644
--- a/src/backend/access/spgist/spgvacuum.c
+++ b/src/backend/access/spgist/spgvacuum.c
@@ -652,7 +652,7 @@ spgvacuumpage(spgBulkDeleteState *bds, BlockNumber blkno)
*/
if (!SpGistBlockIsRoot(blkno))
{
- if (PageIsEmpty(page))
+ if (PageIsNew(page) || PageIsEmpty(page))
{
RecordFreeIndexPage(index, blkno);
bds->stats->pages_deleted++;