]> 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:52 +0000 (16:45 -0400)
commit86dab9c8addd2898abc0feddc4e7f1ef0cd786f4
tree4f220df53d0306f1f814fac93d2dc154462f7c52
parent14d4548f1c9ba21d2c1eb26e4169e6fee3b3fd68
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