Hi, On 2021-04-12 16:11:59 -0700, Peter Geoghegan wrote: > Recent work from commit 5100010e taught VACUUM that it doesn't have to > do index vacuuming in cases where there are practically zero (not > necessarily exactly zero) tuples to delete from indexes.
FWIW, I'd not at all be surprised if this causes some issues. Consider cases where all index lookups are via bitmap scans (which does not support killtuples) - if value ranges are looked up often the repeated heap fetches can absolutely kill query performance. I've definitely had to make autovacuum more aggressive for cases like this or schedule manual vacuums, and now that's silently not good enough anymore. Yes, 2% of the table isn't all that much, but often enough all the updates and lookups concentrate in one value range. As far as I can see there's no reasonable way to disable this "optimization", which scares me. Greetings, Andres Freund