Tom Lane wrote:
Are you still concerned about the PageGetFreeSpace issue?
Not anymore.
The failure case I had in mind was not being able to find any valid
split points when a page is full of max-sized index tuples. On a closer
look, that doesn't seem to be a problem. Even though checksplitloc would
incorrectly consider the split (HIKEY+item)-(HIKEY+item+item) as
invalid, the split (HIKEY+item+item)-(HIKEY+item) is just as good.
Similarly on the rightmost page, even if (HIKEY+item)-(item+item+item)
is incorrectly considered as invalid, (HIKEY+item+item)-(item+item) is fine.
There also seems to always be some slack space because of alignments.
--
Heikki Linnakangas
EnterpriseDB http://www.enterprisedb.com
---------------------------(end of broadcast)---------------------------
TIP 7: You can help support the PostgreSQL project by donating at
http://www.postgresql.org/about/donate