-V vacuum scaling factor: see "Vacuum and Analyze" below.
-a analyze base threshold: see "Vacuum and Analyze" below.
-A analyze scaling factor: see "Vacuum and Analyze" below.
+-i update interval: how often (in terms of iterations of the primary loop
+ over the database list) to update the database list. The default is 2,
+ which means the list will be updated before every other pass through
+ the database list.
-L log file: Name of file to which output is submitted, otherwise STDERR
-U username: Username pg_autovacuum will use to connect with, if not
specified the current username is used.
-A 1 (half of -V if not specified)
-s 300 (5 minutes)
-S 2
+-i 2
The following arguments are used on Windows only:
* Revisions by Christopher B. Browne, Liberty RMS
* Win32 Service code added by Dave Page
*
- * $PostgreSQL: pgsql/contrib/pg_autovacuum/pg_autovacuum.c,v 1.30 2005/04/03 00:01:51 tgl Exp $
+ * $PostgreSQL: pgsql/contrib/pg_autovacuum/pg_autovacuum.c,v 1.31 2005/04/19 03:35:15 momjian Exp $
*/
#include "postgres_fe.h"
args->analyze_base_threshold = -1;
args->analyze_scaling_factor = -1;
args->debug = AUTOVACUUM_DEBUG;
+ args->update_interval = UPDATE_INTERVAL;
#ifndef WIN32
args->daemonize = 0;
#else
case 'A':
args->analyze_scaling_factor = atof(optarg);
break;
+ case 'i':
+ args->update_interval = atoi(optarg);
+ break;
case 'c':
args->av_vacuum_cost_delay = atoi(optarg);
break;
log_entry(logbuffer, LVL_INFO);
sprintf(logbuffer, " args->analyze_scaling_factor=%f", args->analyze_scaling_factor);
log_entry(logbuffer, LVL_INFO);
+ sprintf(logbuffer, " args->update_interval=%i", args->update_interval);
+ log_entry(logbuffer, LVL_INFO);
if (args->av_vacuum_cost_delay != -1)
sprintf(logbuffer, " args->av_vacuum_cost_delay=%d", args->av_vacuum_cost_delay);
}
}
- if (loops % UPDATE_INTERVAL == 0) /* Update the list if it's
- * time */
+ if (loops % args->update_interval == 0) /* Update the list if it's
+ * time */
update_db_list(db_list); /* Add and remove databases from
* the list */
if (dbs->conn != NULL)
{
- if (loops % UPDATE_INTERVAL == 0) /* Update the list if
- * it's time */
+ if (loops % args->update_interval == 0) /* Update the list if
+ * it's time */
update_table_list(dbs); /* Add and remove tables
* from the list */
* Header file for pg_autovacuum.c
* (c) 2003 Matthew T. O'Connor
*
- * $PostgreSQL: pgsql/contrib/pg_autovacuum/pg_autovacuum.h,v 1.14 2004/12/02 22:48:10 momjian Exp $
+ * $PostgreSQL: pgsql/contrib/pg_autovacuum/pg_autovacuum.h,v 1.15 2005/04/19 03:35:15 momjian Exp $
*/
#ifndef _PG_AUTOVACUUM_H
{
int vacuum_base_threshold,
analyze_base_threshold,
+ update_interval,
sleep_base_value,
debug,