]> granicus.if.org Git - postgresql/commit
Retry after buffer locking failure during SPGiST index creation.
authorTom Lane <tgl@sss.pgh.pa.us>
Sat, 2 Nov 2013 20:45:42 +0000 (16:45 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Sat, 2 Nov 2013 20:45:42 +0000 (16:45 -0400)
commit24ace4053d42e2c48af8c15d598622e488fb9502
tree763003210bff179728b91d1cc69b9c335fb102db
parentbffd1ce92cb4e3e44c3c0ff8cdd4a5a2a8be5e3c
Retry after buffer locking failure during SPGiST index creation.

The original coding thought this case was impossible, but it can happen
if the bgwriter or checkpointer processes decide to write out an index
page while creation is still proceeding, leading to a bogus "unexpected
spgdoinsert() failure" error.  Problem reported by Jonathan S. Katz.

Teodor Sigaev
src/backend/access/spgist/spgdoinsert.c
src/backend/access/spgist/spginsert.c