Tom Lane wrote: > Alvaro Herrera <[EMAIL PROTECTED]> 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?
Hmm, yeah. > 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. Maybe what we should do is revert the pgstat_recv_tabstat() part of the patch in 8.1, and consider redefining last_anl_tuples in HEAD. Caffeine is not high enough yet to propose anything sensible, but I'll think about it a bit later. -- Alvaro Herrera http://www.CommandPrompt.com/ PostgreSQL Replication, Consulting, Custom Development, 24x7 support ---------------------------(end of broadcast)--------------------------- TIP 9: In versions below 8.0, the planner will ignore your desire to choose an index scan if your joining column's datatypes do not match