Fix masking of SP-GiST pages during xlog consistency check

spg_mask() didn't take into account that pd_lower equal to SizeOfPageHeaderData
is still valid value.  This commit fixes that.  Backpatch to 11, where
spg_mask() pg_lower check was introduced.

Reported-by: Michael Paquier
Discussion: https://postgr.es/m/20200615131405.GM52676%40paquier.xyz
Backpatch-through: 11
pull/55/head
Alexander Korotkov 5 years ago
parent 15cb2bd270
commit a44dd932ff
  1. 2
      src/backend/access/spgist/spgxlog.c

@ -1008,6 +1008,6 @@ spg_mask(char *pagedata, BlockNumber blkno)
* Mask the unused space, but only if the page's pd_lower appears to have
* been set correctly.
*/
if (pagehdr->pd_lower > SizeOfPageHeaderData)
if (pagehdr->pd_lower >= SizeOfPageHeaderData)
mask_unused_space(page);
}

Loading…
Cancel
Save