Search Postgresql Archives

Autovacuum doesn't work

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

I am new to PostgreSQL.

I have a PostgreSQL table named "test" with 300,000,000 records inserted, it has only two fields (id, and int i).  For testing purposes, after inserts, all records have been updated once in order to make n_dead_tup = 300,000,000 

Current PostgreSQL settings:
autovacuum: On (default)
track_counts: ON (default)
autovacuum_vacuum_threshold: 50 (default)
autovacuum_vacuum_scale_factor: 0.2 (default)
the autovacuum checker should be run every minute (default)
autovacuum_freeze_max_age: 200000000 (default)
os: ubnutu 12.04
PostgreSQL: 9.2.4

Current stat of "test" table:
pg_class.reltuples: 3.8415e+08 
pg_class.relpages: 1703069
last_autovacuum: null (or blank)
last_autoanalyze: 2013-04-13 20:27:12.396048+08
pg_stat_user_tables.n_dead_tup: 300000000

The autovacuum threshold should be about : 76,830,130 (50 + 3.8415e+08 x 0.2)

I expected the autovacuum should be run automatically to clear the dead tuples, however, after over 3 hours, by checking pg_stat_user_tables,  the last_autovacuum is still null and n_dead_tup still equals to 300000000, 

Can anyone advise me why the autovacuum is not running or if the autovacuum is running but it is not yet completed?

FYI: for the same machine (i.e. same o/s and same postgresql and same postgresql conf), I have done another test case with reltuples around 60,000,000 records the autovacuum worked well. 


Regards



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux