You signed in with another tab or window.Reload to refresh your session.You signed out in another tab or window.Reload to refresh your session.You switched accounts on another tab or window.Reload to refresh your session.Dismiss alert
The wraparound failsafe mechanism added by commit1e55e7d handled theone-pass strategy case (i.e. the "table has no indexes" case) by addinga dedicated failsafe check. This made up for the fact that the usualone-pass checks inside lazy_vacuum_all_indexes() cannot ever be reachedduring a one-pass strategy VACUUM.This approach failed to account for two-pass VACUUMs that opt out ofindex vacuuming up-front. The INDEX_CLEANUP off case in the only casethat works like that.Fix this by performing a failsafe check every 4GB during the first scanof the heap, regardless of the details of the VACUUM. This eliminatesthe special case, and will make the failsafe trigger more reliably.Author: Peter Geoghegan <pg@bowt.ie>Reported-By: Andres Freund <andres@anarazel.de>Reviewed-By: Masahiko Sawada <sawada.mshk@gmail.com>Discussion:https://postgr.es/m/20210424002921.pb3t7h6frupdqnkp@alap3.anarazel.de