I'm running 8.4 and I've tried to disable autovacuum since the vacuuming is taken care internally in the code. The same was true with the previous version (8.0 to 8.3) and there was never any problem. However now in 8.4 the "off" setting seems to be ignored even if "track_counts = off" and huge naptime and thresholds are set. For example this is in the logs:
2009-07-30 22:40:25 CEST - : LOG: automatic vacuum of table "t.x": index scans: 0 pages: 0 removed, 43035 remain tuples: 0 removed, 6459092 remain system usage: CPU 0.73s/0.80u sec elapsed 112.01 sec 2009-07-30 22:43:05 CEST - : LOG: automatic vacuum of table "t.y": index scans: 1 pages: 0 removed, 47527 remain tuples: 867656 removed, 6588630 remain system usage: CPU 1.07s/4.12u sec elapsed 159.99 sec
Since there are a lot of tables like this (160GB in total) and the insert time is critical we cannot afford having autovacuum messing up the ongoing activity. Is there a way to completely switch it off ?
Btw, the database is one week old, vacuum procedures run anyway often enough (but with large intervals between them so normal operations have a chance to catch up), so there is really no need to have autovacuum doing maintenance operations.