Fix oversight in coding of _bt_start_vacuum: we can't assume that the LWLock
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 30 Mar 2007 00:12:59 +0000 (00:12 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 30 Mar 2007 00:12:59 +0000 (00:12 +0000)
commit8875d0987d767f0ea14bffd636841e003d41eca8
tree65cebb8cd7418fbfa7716ab1cee05b7b1b4c50aa
parent452427d0fdc49aeb74711eabe0c6d9554d406089
Fix oversight in coding of _bt_start_vacuum: we can't assume that the LWLock
will be released by transaction abort before _bt_end_vacuum gets called.
If either of these "can't happen" errors actually happened, we'd freeze up
trying to acquire an already-held lock.  Latest word is that this does
not explain Martin Pitt's trouble report, but it still looks like a bug.
src/backend/access/nbtree/nbtutils.c