]> granicus.if.org Git - postgresql/commit
Fix failure to mark init buffers as BM_PERMANENT.
authorRobert Haas <rhaas@postgresql.org>
Tue, 14 Mar 2017 15:51:11 +0000 (11:51 -0400)
committerRobert Haas <rhaas@postgresql.org>
Tue, 14 Mar 2017 15:52:27 +0000 (11:52 -0400)
commit36fcb36b8b1858a588912a02f0ca9489b99ca423
tree46ede27396f70b53b459feb92f222365e4414ce6
parent033dcdcd8a08f90d3569fc70a2cffe9c10b6be1d
Fix failure to mark init buffers as BM_PERMANENT.

This could result in corruption of the init fork of an unlogged index
if the ambuildempty routine for that index used shared buffers to
create the init fork, which was true for brin, gin, gist, and hash
indexes.

Patch by me, based on an earlier patch by Michael Paquier, who also
reviewed this one.  This also incorporates an idea from Artur
Zakirov.

Discussion: http://postgr.es/m/CACYUyc8yccE4xfxhqxfh_Mh38j7dRFuxfaK1p6dSNAEUakxUyQ@mail.gmail.com
src/backend/storage/buffer/bufmgr.c
src/include/storage/buf_internals.h