Fix using too many LWLocks bug, reported by Craig Ringer

Teodor Sigaev <teodor@sigaev.ru>

Commit: dcd4075379458783e035fd0a5f6bb758ba4700a2
Author: Teodor Sigaev <teodor@sigaev.ru>
Date: 2008-04-22T17:54:19Z
Releases: 8.3.2
Fix using too many LWLocks bug, reported by Craig Ringer
<craig@postnewspapers.com.au>.
It was my mistake, I missed limitation of number of held locks, now GIN doesn't
use continiuous locks, but still hold buffers pinned to prevent interference
with vacuum's deletion algorithm.

Files

PathChange+/−
src/backend/access/gin/ginget.c modified +159 −207
src/include/access/gin.h modified +8 −6