]> granicus.if.org Git - postgresql/commit
Fix bug introduced into _bt_getstackbuf() on 2003-Feb-21: the initial
authorTom Lane <tgl@sss.pgh.pa.us>
Tue, 17 Aug 2004 23:16:07 +0000 (23:16 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Tue, 17 Aug 2004 23:16:07 +0000 (23:16 +0000)
commitba9b9a6e6220b47b92a477e9dc663456ef04cd24
treedc5e230a726eb4c71f5eaf71e48ea9c5874aa26d
parent17663e1aebf91a926a8ff2dd30d1fa1dedee2563
Fix bug introduced into _bt_getstackbuf() on 2003-Feb-21: the initial
value of 'start' could be past the end of the page, if the page was
split by some concurrent inserting process since we visited it.  In
this situation the code could look at bogus entries and possibly find
a match (since after all those entries still contain what they had
before the split).  This would lead to 'specified item offset is too large'
followed by 'PANIC: failed to add item to the page', as reported by Joe
Conway for scenarios involving heavy concurrent insertion activity.
src/backend/access/nbtree/nbtinsert.c