Hi,
On 2021-04-24 11:59:29 -0700, Peter Geoghegan wrote:
> The number of live tuples (or even dead tuples) in the whole entire
> index is simply not a useful proxy for what actually matters -- this
> is 100% clear.
Did anybody actually argue for using #live entries directly? I think
*dead* entries is more relevant, partiuclarly because various forms of
local cleanup can be taken into account. Live tuples might come in to
put the number of dead tuples into perspective, but otherwise not that
much?
> There are many cases where this will do completely the wrong thing,
> even if we have perfectly accurate information.
Imo the question isn't really whether criteria will ever do something
wrong, but how often and how consequential such mistakes will
be. E.g. unnecessarily vacuuming an index isn't fun, but it's better
than ending up not never cleaning up dead index pointers despite repeat
accesses (think bitmap scans).
Greetings,
Andres Freund