mirror of
https://github.com/postgres/postgres.git
synced 2025-07-21 16:02:15 +03:00
Add a multi-worker capability to autovacuum. This allows multiple worker
processes to be running simultaneously. Also, now autovacuum processes do not count towards the max_connections limit; they are counted separately from regular processes, and are limited by the new GUC variable autovacuum_max_workers. The launcher now has intelligence to launch workers on each database every autovacuum_naptime seconds, limited only on the max amount of worker slots available. Also, the global worker I/O utilization is limited by the vacuum cost-based delay feature. Workers are "balanced" so that the total I/O consumption does not exceed the established limit. This part of the patch was contributed by ITAGAKI Takahiro. Per discussion.
This commit is contained in:
@ -13,7 +13,7 @@
|
||||
* Portions Copyright (c) 1996-2007, PostgreSQL Global Development Group
|
||||
* Portions Copyright (c) 1994, Regents of the University of California
|
||||
*
|
||||
* $PostgreSQL: pgsql/src/include/miscadmin.h,v 1.193 2007/03/01 14:52:04 petere Exp $
|
||||
* $PostgreSQL: pgsql/src/include/miscadmin.h,v 1.194 2007/04/16 18:29:56 alvherre Exp $
|
||||
*
|
||||
* NOTES
|
||||
* some of the information in this file should be moved to other files.
|
||||
@ -129,6 +129,7 @@ extern DLLIMPORT char *DataDir;
|
||||
|
||||
extern DLLIMPORT int NBuffers;
|
||||
extern int MaxBackends;
|
||||
extern int MaxConnections;
|
||||
|
||||
extern DLLIMPORT int MyProcPid;
|
||||
extern DLLIMPORT struct Port *MyProcPort;
|
||||
|
Reference in New Issue
Block a user