Protect against torn pages when deleting GIN list pages.

Heikki Linnakangas <heikki.linnakangas@iki.fi>

Commit: 686a7194ef1676e4735bbe1c0270dc25c6f33796
Author: Heikki Linnakangas <heikki.linnakangas@iki.fi>
Date: 2014-05-08T11:43:58Z
Releases: 9.1.14
Protect against torn pages when deleting GIN list pages.

To-be-deleted list pages contain no useful information, as they are being
deleted, but we must still protect the writes from being torn by a crash
after a partial write. To do that, re-initialize the pages on WAL replay.

Jeff Janes caught this with a test program to test partial writes.
Backpatch to all supported versions.

Files

PathChange+/−
src/backend/access/gin/ginxlog.c modified +14 −14