Auto-vacuum parameters (Postgres 8.2 on Windows Server 2003)

From: "Christian Leclerc" <cleclerc(at)ilog(dot)fr>
To: <pgsql-novice(at)postgresql(dot)org>
Subject: Auto-vacuum parameters (Postgres 8.2 on Windows Server 2003)
Date: 2007-07-30 16:40:19
Message-ID: 1F31510056BF344C8D1076017C1367FA0FD18C@parmbx02.ilog.biz
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

Hello,

I thought I set up correctly the pg_autovacuum daemon on according to
the documentation available at the following URL:
<http://www.postgresql.org/docs/8.2/static/routine-vacuuming.html>
http://www.postgresql.org/docs/8.2/static/routine-vacuuming.html
Please see below the parameters below set up in my postgresql.conf file.

But the following message is systematically displayed as soon as I
insert or update lots of rows in my tables when I browse my tables with
pgAdmin :
"Running VACUUM recommended
The estimated rowcount on the table
"sales_admin.maintenance_contract_lines" deviates significantly from the
actual rowcount. You should run VACUUM ANALYZE on this table.
Instead of issuing a manual VACUUM ANALYZE command on this table (you
can use the pgAdmin III maintenance menu for this), running VACUUM
ANALYZE on a regular or automated basis should be considered. This can
be achieved using a scheduler. PostgreSQL also supplies the
pg_autovacuum daemon, which will track changes made to the database and
issue vacuum commands as required automatically. In most cases,
pg_autovacuum will be the best choice"

What I'm doing wrong?

Thanks,
Christian

#-----------------------------------------------------------------------
----
# RUNTIME STATISTICS
#-----------------------------------------------------------------------
----

# - Query/Index Statistics Collector -

#stats_command_string = on
#update_process_title = on

stats_start_collector = on # needed for block or row stats
# (change requires restart)
#stats_block_level = off
stats_row_level = on
#stats_reset_on_server_start = off # (change requires restart)

# - Statistics Monitoring -

#log_parser_stats = off
#log_planner_stats = off
#log_executor_stats = off
#log_statement_stats = off

#-----------------------------------------------------------------------
----
# AUTOVACUUM PARAMETERS
#-----------------------------------------------------------------------
----

autovacuum = on # enable autovacuum subprocess?
# 'on' requires
stats_start_collector
# and stats_row_level to also be
on
#autovacuum_naptime = 1min # time between autovacuum runs
#autovacuum_vacuum_threshold = 500 # min # of tuple updates before
# vacuum
#autovacuum_analyze_threshold = 250 # min # of tuple updates before
# analyze
#autovacuum_vacuum_scale_factor = 0.2 # fraction of rel size before
# vacuum
#autovacuum_analyze_scale_factor = 0.1 # fraction of rel size before
# analyze
#autovacuum_freeze_max_age = 200000000 # maximum XID age before forced
vacuum
# (change requires restart)
#autovacuum_vacuum_cost_delay = -1 # default vacuum cost delay for
# autovacuum, -1 means use
# vacuum_cost_delay
#autovacuum_vacuum_cost_limit = -1 # default vacuum cost limit for
# autovacuum, -1 means use
# vacuum_cost_limit

Browse pgsql-novice by date

  From Date Subject
Next Message Matt Arnilo S. Baluyos (Mailing Lists) 2007-07-31 01:22:25 SQL_CALC_FOUND_ROWS equivalent in PostgreSQL
Previous Message Dale Seaburg 2007-07-30 15:45:45 Re: Not able to find a table