Dylan Hansen <dhansen@xxxxxxxxx> writes: > I have been spending some time looking into how auto-vacuum is > performing on one of our servers. After putting the PostgreSQL logs > in debug I noticed that the threshold for ANALYZE was never being hit > for a particular table because the calculated value becomes > increasingly negative. Hmm, it shouldn't ever be negative at all, I would think. The calculation in question is anltuples = tabentry->n_live_tuples + tabentry->n_dead_tuples - tabentry->last_anl_tuples; Apparently somehow last_anl_tuples has managed to get to be bigger than n_live_tuples, which maybe could happen after a delete. Should we be clamping last_anl_tuples to not exceed n_live_tuples somewhere? Alvaro and Matthew, what do you think? regards, tom lane