]> granicus.if.org Git - postgresql/commit
Avoid unnecessary page-level SSI lock check in heap_insert().
authorTom Lane <tgl@sss.pgh.pa.us>
Fri, 16 Sep 2011 18:47:20 +0000 (14:47 -0400)
committerTom Lane <tgl@sss.pgh.pa.us>
Fri, 16 Sep 2011 18:47:20 +0000 (14:47 -0400)
commit9d306c66e63eb7f45eab9475b3f96c3134bacac6
tree6b36ea4888679af24dea1cca0f15a07d959d01d8
parente6ed34f70d57d102da8383919e0046c577d317e7
Avoid unnecessary page-level SSI lock check in heap_insert().

As observed by Heikki, we need not conflict on heap page locks during an
insert; heap page locks are only aggregated tuple locks, they don't imply
locking "gaps" as index page locks do.  So we can avoid some unnecessary
conflicts, and also do the SSI check while not holding exclusive lock on
the target buffer.

Kevin Grittner, reviewed by Jeff Davis.  Back-patch to 9.1.
src/backend/access/heap/heapam.c