Use streaming read I/O in GiST vacuuming
Like c5c239e26e387 did for btree vacuuming, make GiST vacuum use the
read stream API for sequentially processed pages.
Because it is possible for concurrent insertions to relocate unprocessed
index entries to already vacuumed pages, GiST vacuum must backtrack and
reprocess those pages. These pages are still read with explicit
ReadBuffer() calls.
Author: Andrey M. Borodin <x4mmm@yandex-team.ru>
Reviewed-by: Melanie Plageman <melanieplageman@gmail.com>
Discussion: https://postgr.es/m/EFEBED92-18D1-4C0F-A4EB-CD47072EF071%40yandex-team.ru
Branch
------
master
Details
-------
https://git.postgresql.org/pg/commitdiff/69273b818b1df82c36b2b2acb592db3d0743cc7c
Modified Files
--------------
src/backend/access/gist/gistvacuum.c | 84 ++++++++++++++++++++++++++----------
1 file changed, 61 insertions(+), 23 deletions(-)