mirror of
https://github.com/postgres/postgres.git
synced 2025-06-05 23:56:58 +03:00
Replace PGPROC.isBackgroundWorker with isRegularBackend.
Commit 34486b609 effectively redefined isBackgroundWorker as meaning "not a regular backend", whereas before it had the narrower meaning of AmBackgroundWorkerProcess(). For clarity, rename the field to isRegularBackend and invert its sense. Discussion: https://postgr.es/m/1808397.1735156190@sss.pgh.pa.us
This commit is contained in:
parent
34486b6092
commit
508a97ee49
@ -466,7 +466,7 @@ MarkAsPreparingGuts(GlobalTransaction gxact, TransactionId xid, const char *gid,
|
|||||||
proc->databaseId = databaseid;
|
proc->databaseId = databaseid;
|
||||||
proc->roleId = owner;
|
proc->roleId = owner;
|
||||||
proc->tempNamespaceId = InvalidOid;
|
proc->tempNamespaceId = InvalidOid;
|
||||||
proc->isBackgroundWorker = true;
|
proc->isRegularBackend = false;
|
||||||
proc->lwWaiting = LW_WS_NOT_WAITING;
|
proc->lwWaiting = LW_WS_NOT_WAITING;
|
||||||
proc->lwWaitMode = 0;
|
proc->lwWaitMode = 0;
|
||||||
proc->waitLock = NULL;
|
proc->waitLock = NULL;
|
||||||
|
@ -3640,8 +3640,8 @@ CountDBConnections(Oid databaseid)
|
|||||||
|
|
||||||
if (proc->pid == 0)
|
if (proc->pid == 0)
|
||||||
continue; /* do not count prepared xacts */
|
continue; /* do not count prepared xacts */
|
||||||
if (proc->isBackgroundWorker)
|
if (!proc->isRegularBackend)
|
||||||
continue; /* do not count background workers */
|
continue; /* count only regular backend processes */
|
||||||
if (!OidIsValid(databaseid) ||
|
if (!OidIsValid(databaseid) ||
|
||||||
proc->databaseId == databaseid)
|
proc->databaseId == databaseid)
|
||||||
count++;
|
count++;
|
||||||
@ -3712,8 +3712,8 @@ CountUserBackends(Oid roleid)
|
|||||||
|
|
||||||
if (proc->pid == 0)
|
if (proc->pid == 0)
|
||||||
continue; /* do not count prepared xacts */
|
continue; /* do not count prepared xacts */
|
||||||
if (proc->isBackgroundWorker)
|
if (!proc->isRegularBackend)
|
||||||
continue; /* do not count background workers */
|
continue; /* count only regular backend processes */
|
||||||
if (proc->roleId == roleid)
|
if (proc->roleId == roleid)
|
||||||
count++;
|
count++;
|
||||||
}
|
}
|
||||||
|
@ -432,7 +432,7 @@ InitProcess(void)
|
|||||||
MyProc->databaseId = InvalidOid;
|
MyProc->databaseId = InvalidOid;
|
||||||
MyProc->roleId = InvalidOid;
|
MyProc->roleId = InvalidOid;
|
||||||
MyProc->tempNamespaceId = InvalidOid;
|
MyProc->tempNamespaceId = InvalidOid;
|
||||||
MyProc->isBackgroundWorker = !AmRegularBackendProcess();
|
MyProc->isRegularBackend = AmRegularBackendProcess();
|
||||||
MyProc->delayChkptFlags = 0;
|
MyProc->delayChkptFlags = 0;
|
||||||
MyProc->statusFlags = 0;
|
MyProc->statusFlags = 0;
|
||||||
/* NB -- autovac launcher intentionally does not set IS_AUTOVACUUM */
|
/* NB -- autovac launcher intentionally does not set IS_AUTOVACUUM */
|
||||||
@ -631,7 +631,7 @@ InitAuxiliaryProcess(void)
|
|||||||
MyProc->databaseId = InvalidOid;
|
MyProc->databaseId = InvalidOid;
|
||||||
MyProc->roleId = InvalidOid;
|
MyProc->roleId = InvalidOid;
|
||||||
MyProc->tempNamespaceId = InvalidOid;
|
MyProc->tempNamespaceId = InvalidOid;
|
||||||
MyProc->isBackgroundWorker = true;
|
MyProc->isRegularBackend = false;
|
||||||
MyProc->delayChkptFlags = 0;
|
MyProc->delayChkptFlags = 0;
|
||||||
MyProc->statusFlags = 0;
|
MyProc->statusFlags = 0;
|
||||||
MyProc->lwWaiting = LW_WS_NOT_WAITING;
|
MyProc->lwWaiting = LW_WS_NOT_WAITING;
|
||||||
|
@ -149,7 +149,7 @@ typedef enum
|
|||||||
* but its myProcLocks[] lists are valid.
|
* but its myProcLocks[] lists are valid.
|
||||||
*
|
*
|
||||||
* We allow many fields of this struct to be accessed without locks, such as
|
* We allow many fields of this struct to be accessed without locks, such as
|
||||||
* delayChkptFlags and isBackgroundWorker. However, keep in mind that writing
|
* delayChkptFlags and isRegularBackend. However, keep in mind that writing
|
||||||
* mirrored ones (see below) requires holding ProcArrayLock or XidGenLock in
|
* mirrored ones (see below) requires holding ProcArrayLock or XidGenLock in
|
||||||
* at least shared mode, so that pgxactoff does not change concurrently.
|
* at least shared mode, so that pgxactoff does not change concurrently.
|
||||||
*
|
*
|
||||||
@ -216,7 +216,7 @@ struct PGPROC
|
|||||||
Oid tempNamespaceId; /* OID of temp schema this backend is
|
Oid tempNamespaceId; /* OID of temp schema this backend is
|
||||||
* using */
|
* using */
|
||||||
|
|
||||||
bool isBackgroundWorker; /* true if not a regular backend. */
|
bool isRegularBackend; /* true if it's a regular backend. */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* While in hot standby mode, shows that a conflict signal has been sent
|
* While in hot standby mode, shows that a conflict signal has been sent
|
||||||
|
Loading…
x
Reference in New Issue
Block a user