Jeff Davis <pg...@j-davis.com> writes: > Sounds good. I will commit something like the v2 patch then soon, and > if we need a different condition we can change it later.
Sadly, this made things worse not better: crake is failing cross-version-upgrade tests again [1], with dump diffs like @@ -270836,8 +270836,8 @@ -- SELECT * FROM pg_catalog.pg_restore_relation_stats( 'version', '000000'::integer, 'relation', 'public.hash_f8_index'::regclass, - 'relpages', '66'::integer, - 'reltuples', '10000'::real, + 'relpages', '0'::integer, + 'reltuples', '-1'::real, 'relallvisible', '0'::integer ); I think what is happening is that the patch shut off CREATE INDEX's update of not only the table's stats but also the index's stats. This seems unhelpful: the index's empty stats can never be what's wanted. We could band-aid over this by making AdjustUpgrade.pm lobotomize the comparisons of all three stats fields, but I think it's just wrong as-is. Perhaps fix by checking the relation's relkind before applying the autovacuum heuristic? regards, tom lane [1] https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=crake&dt=2025-03-07%2018%3A19%3A14