Hello,<br /><p>I have a table (accounts) with 600,000,000 rows. A heavy high-concurrent workload that makes mostly
updateson this table generates a lot of dead tuples in its run, which is expected due to MVCC.<br /> The problem is
thateven though autovacuum is enabled, the autovacuum worker does not vacuum this table (I entered custom autovacuum
settingsfor this table in pg_autovacuum to try to force a situation). Autovacuum is working for other smaller tables
butnot for accounts.<p><2008-10-29 11:09:03.453 PDT>DEBUG: 00000: accounts: vac: 16697969 (threshold 6000050),
anl:16697969 (threshold 120000048)<br /><2008-10-29 11:09:05.610 PDT>DEBUG: 00000: accounts: vac: 16699578
(threshold6000050), anl: 16699578 (threshold 120000048)<br /> <2008-10-29 11:10:03.563 PDT>DEBUG: 00000:
accounts:vac: 16735906 (threshold 6000050), anl: 16735906 (threshold 120000048)<p><br />please check the first log
message:the vacuum threshold is 6,000,050 rows and the number of dead tuples is 16,697,969. Even though the number of
dead_tuplesis greater than the threshold the autovacuum is not being triggered for this table. So, besides this
condition(dead_tuples > threshold) what else is taken into account by autovacuum?<br /><p>Thank you,<p>-Noah<br />