Don Seiler <don@seiler.us> writes:
> I'm testing an upgrade of a database from 9.2.10 to 9.2.22. The upgrade
> seemingly had no problems and I started the DB. However when I went to look
> at some vacuum-related status, every table had n_dead_tup and n_live_tup =
> 0.
How did you shut down the existing installation? This'd be expected if
you used "--mode immediate". Otherwise, I'd have thought those stats
would still be there.
> For what it's worth, this DB was a clone of a prod standby. I didn't think
> to check the stats after opening the new clone (renamed the recovery.conf),
> so I can't say for sure what it looked like prior to upgrade. I've kicked
> off a DB-wide analyze but obviously that takes a long time and more or less
> would mean prod app downtime as the optimizer would make all sorts of goofy
> decisions until the stats are in place.
The optimizer's decisions are generally not based on the stats collector's
info, but on the contents of pg_statistic. This observation doesn't prove
anything about whether that was intact ... but I'd be really surprised
if it wasn't.
regards, tom lane