Alvaro Herrera <alvherre@commandprompt.com> writes:
> + /* last_anl_tuples must never exceed n_live_tuples */
If we actually believe the above statement, it seems like your patch
to pgstat_recv_tabstat() opens a new issue: with that patch, it is
possible for pgstat_recv_tabstat() to decrease n_live_tuples, and
therefore a clamp needs to be applied in pgstat_recv_tabstat() too.
No?
The reason I didn't patch it myself is that I'm not quite clear on what
*should* be happening here. What effect should a large delete have on
the ANALYZE threshold, exactly? You could argue that a deletion
potentially changes the statistics (by omission), and therefore inserts,
updates, and deletes should equally count +1 towards the analyze
threshold. I don't think we are implementing that though. If we want
to do it that way, I suspect last_anl_tuples as currently defined is not
the right comparison point.
regards, tom lane