Autovacuum doesn't work - Mailing list pgsql-general

From Ascot Moss
Subject Autovacuum doesn't work
Date
Msg-id CAGiZwvM5eVR-4QOiHQz_KsUJDpyTzkOrMeXdU+FR63_mtZr93w@mail.gmail.com
Whole thread Raw
List pgsql-general
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


pgsql-general by date:

Previous
From: "Francisco Figueiredo Jr."
Date:
Subject: Re: Git host for postgresql related projects
Next
From: Ascot Moss
Date:
Subject: Re: PostgreSQL 9.1.8 Upgrade to 9.1.9