summaryrefslogtreecommitdiff
path: root/src/backend/storage/lmgr/proc.c
diff options
context:
space:
mode:
authorAlvaro Herrera <alvherre@alvh.no-ip.org>2007-10-24 20:55:36 +0000
committerAlvaro Herrera <alvherre@alvh.no-ip.org>2007-10-24 20:55:36 +0000
commit745c1b2c2ab8385c8392ff10383a64527e3150b7 (patch)
tree5131b38db8268f22d6202869e3e7c7ab4fc5056e /src/backend/storage/lmgr/proc.c
parent3ef18797b83b9b274218009802a5994b7f41c818 (diff)
Rearrange vacuum-related bits in PGPROC as a bitmask, to better support
having several of them. Add two more flags: whether the process is executing an ANALYZE, and whether a vacuum is for Xid wraparound (which is obviously only set by autovacuum). Sneakily move the worker's recently-acquired PostAuthDelay to a more useful place.
Diffstat (limited to 'src/backend/storage/lmgr/proc.c')
-rw-r--r--src/backend/storage/lmgr/proc.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/src/backend/storage/lmgr/proc.c b/src/backend/storage/lmgr/proc.c
index ddebdcc5e2a..fdf089f836c 100644
--- a/src/backend/storage/lmgr/proc.c
+++ b/src/backend/storage/lmgr/proc.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/storage/lmgr/proc.c,v 1.194 2007/09/08 20:31:15 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/storage/lmgr/proc.c,v 1.195 2007/10/24 20:55:36 alvherre Exp $
*
*-------------------------------------------------------------------------
*/
@@ -291,8 +291,9 @@ InitProcess(void)
MyProc->databaseId = InvalidOid;
MyProc->roleId = InvalidOid;
MyProc->inCommit = false;
- MyProc->inVacuum = false;
- MyProc->isAutovacuum = IsAutoVacuumWorkerProcess();
+ MyProc->vacuumFlags = 0;
+ if (IsAutoVacuumWorkerProcess())
+ MyProc->vacuumFlags |= PROC_IS_AUTOVACUUM;
MyProc->lwWaiting = false;
MyProc->lwExclusive = false;
MyProc->lwWaitLink = NULL;
@@ -429,8 +430,8 @@ InitAuxiliaryProcess(void)
MyProc->databaseId = InvalidOid;
MyProc->roleId = InvalidOid;
MyProc->inCommit = false;
- MyProc->inVacuum = false;
- MyProc->isAutovacuum = IsAutoVacuumLauncherProcess(); /* is this needed? */
+ /* we don't set the "is autovacuum" flag in the launcher */
+ MyProc->vacuumFlags = 0;
MyProc->lwWaiting = false;
MyProc->lwExclusive = false;
MyProc->lwWaitLink = NULL;