On 11/11/05, Stephen Byers <stephenabyers@yahoo.com> wrote:
> I am using new postgres 8.1 and also trying out the integrated autovacuum.
> I have a concern.
>
> I have a table where I perform an update on a row every 10 seconds. The
> table is VERY small. Hardly any INSERTS, no DELETES, and a ton of UPDATES.
>
> adbs_db=# select count(*) from volumes;
> count
> -------
> 7
> (1 row)
>
>
>
>
>
> I am looking at the file sizes that correspond to this table and its
> indeces. They are growing -- I think I understand why -- dead rows are
> occuring on an UPDATE. But what I don't understand is why autovacuum has
> not kicked in-- I have kept the default values on autovacuum.
>
>
i will assume you change #autovacuum=off for on in postgresql.conf you
have to activet stats_stat_collector and stats_row_level too...
here explains what factors are used for determining vacuum needs for
tables: http://www.postgresql.org/docs/8.1/static/maintenance.html#AUTOVACUUM
>
> In about 50 minutes' time, the table itself has grown 2MB, and each index
> has grown by about 1MB
>
> Will autovacuum eventually run on this table???? What rows/columns does
> autovacuum look at to determine when to work on a table? I'd like to look
> at those rows, too.
>
> Thanks!!
> Steve
>
>
> adbs_db=# \d volumes
> Table "public.volumes"
> Column | Type | Modifiers
> ------------------+------------------------+--------------------
> label | character varying(128) | not null
> imported | boolean | not null
> closed | boolean | not null
> active | boolean | not null
> online | boolean | not null
> offline | boolean | not null
> archiver_name | character varying(32) | not null
> environment_name | character varying(32) | not null
> curr_size | bigint | not null default 0
> vol_num | integer | not null
> start_time | integer |
> stop_time | integer |
> Indexes:
> "volumes_i1" unique, btree (label)
> "volumes_i2" btree (environment_name)
>
>
--
Atentamente,
Jaime Casanova
(DBA: DataBase Aniquilator ;)