On Wed, 2011-08-03 at 09:03 -0500, Andy Colson wrote: > Depending on how long you ran your test, and the conf settings, and > the size of your database, autovacuum may never have even tried. I know that the vacuum is definitely running (in fact isn't it the vacuum that set the reltuples to 0?), the test was running for a number of weeks but this is the first time it has emptied the queue. > You can take a look on pg_stat_all_tables, under the *vacuum columns, > to see if it ever even ran. (a date in last_autovacuum would indicate > a successful run, it wont show failures). It should, however, write > something to the system log. I recall something like "autovacuum > canceled because...something or other" type a message. Yeah it said it last ran yesterday (and is currently running now), but I did I notice in the log: 2011-08-02 19:43:35 BST ERROR: canceling autovacuum task 2011-08-02 19:43:35 BST CONTEXT: automatic vacuum of table "traffic.public.logdata5queue" Which is interesting if not particularly useful. > While you are running a test, you could keep an eye on the log to see > if you get any of those messages. I think that would indicate > autovacuum could not get a lock. You can also watch pg_stat_activity > during the test, current_query will show you what table is being > vacuumed. I'm pretty certain the autovacuumer is running while the test is on going what I can't work out is under what circumstances it will be able to return unused space to the OS in when it can't. Cheers, -- Michael Graham <mgraham@xxxxxxxxx> -- Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-general