On Mon, Nov 16, 2020 at 1:52 PM Simon Riggs <si...@2ndquadrant.com> wrote:
> The docs are misleading for this feature, since they say: > "This option disables all page-skipping behavior, and is > intended to be used only when the contents of the visibility map are > suspect, which should happen only if there is a hardware or software > issue causing database corruption." > [...] > > The code is quite clear: DISABLE_PAGE_SKIPPING makes the vacuum into > an aggressive vacuum. Line 487, heap_vacuum_rel(). Aggressive vacuums > can still skip a page that is frozen, and rely on the visibility map > for that information. > > So the docs are wrong - we don't disable *all* page-skipping and it is > not appropriate to warn users away from this feature by saying "is > intended to be used only when the contents of the visibility map are > suspect". > This patch seems mis-placed, at least in HEAD. If DISABLE_PAGE_SKIPPING isn't doing what the documentation says it should, but instead provides identical behavior to FREEZE, then the bug should be fixed in HEAD. I'd argue for batch-patching it as well. David J.