Use PageIndexTupleOverwrite() within nbtree.

Peter Geoghegan <pg@bowt.ie>

Commit: af0ba49809b57203d87702b315b64f1fd53c728d
Author: Peter Geoghegan <pg@bowt.ie>
Date: 2019-08-13T18:54:26Z
Releases: 13.0
Use PageIndexTupleOverwrite() within nbtree.

Use the PageIndexTupleOverwrite() bufpage.c routine within nbtree
instead of deleting a tuple and re-inserting its replacement.  This
makes the intent of affected code slightly clearer.  It also makes
CREATE INDEX slightly faster, since there is no longer a need to shift
every leaf page's line pointer array back and forth during index builds.

Author: Peter Geoghegan, Anastasia Lubennikova
Reviewed-By: Anastasia Lubennikova
Discussion: https://postgr.es/m/CAH2-Wz=Zk=B9+Vwm376WuO7YTjFc2SSskifQm4Nme3RRRPtOSQ@mail.gmail.com

Files

PathChange+/−
src/backend/access/nbtree/nbtpage.c modified +4 −5
src/backend/access/nbtree/nbtsort.c modified +6 −15

Discussion