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:13:05 +0000 (00:13 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 30 Mar 2007 00:13:05 +0000 (00:13 +0000)
commit7c917594fa8b5a5f960d514d653fdfa49baeaac5
treeeecfb93b8467327c13dd215ff56d751fda5e5ef4
parent8c70ea0dccf19fef1012b385b2d4feab22373996
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