Reset btpo_cycleid in nbtree VACUUM's REDO routine.

Reset btpo_cycleid to 0 in btree_xlog_vacuum for consistency with
_bt_delitems_vacuum (the corresponding original execution code).  This
makes things neater.

There might be some performance benefit to being consistent like this.
When btvacuumpage doesn't call _bt_delitems_vacuum, it can still
proactively reset btpo_cycleid to 0 via a separate hint-like update
mechanism (it does so whenever it sees that it isn't already set to 0).
And so it's possible that being consistent about resetting btpo_cycleid
like this will save work later on, after standby promotion: subsequent
VACUUMs won't need to clear btpo_cycleid using the hint-like update
mechanism as often as they otherwise would.

Author: Peter Geoghegan <p...@bowt.ie>
Reviewed-By: Andrey Borodin <x4...@yandex-team.ru>
Discussion: 
https://postgr.es/m/CAH2-Wz=+ldfxn9nzyesco8ifcykt6+n-vlyygysehgmz+oy...@mail.gmail.com

Branch
------
master

Details
-------
https://git.postgresql.org/pg/commitdiff/da9517fb3a0979f8d75823199f7a231e0269963b

Modified Files
--------------
src/backend/access/nbtree/nbtxlog.c | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)

Reply via email to