mirror of
https://git.postgresql.org/git/postgresql.git
synced 2024-08-24 06:07:19 +02:00
Fix variable shadowing in procarray.c.
ProcArrayGroupClearXid function has a parameter named "proc", but the same name was used for its local variables. This commit fixes this variable shadowing, to improve code readability. Back-patch to all supported versions, to make future back-patching easy though this patch is classified as refactoring only. Reported-by: Ranier Vilela Author: Ranier Vilela, Aleksander Alekseev https://postgr.es/m/CAEudQAqyoTZC670xWi6w-Oe2_Bk1bfu2JzXz6xRfiOUzm7xbyQ@mail.gmail.com
This commit is contained in:
parent
dccffd9a27
commit
8d28ec21f0
@ -557,13 +557,13 @@ ProcArrayGroupClearXid(PGPROC *proc, TransactionId latestXid)
|
||||
/* Walk the list and clear all XIDs. */
|
||||
while (nextidx != INVALID_PGPROCNO)
|
||||
{
|
||||
PGPROC *proc = &allProcs[nextidx];
|
||||
PGPROC *nextproc = &allProcs[nextidx];
|
||||
PGXACT *pgxact = &allPgXact[nextidx];
|
||||
|
||||
ProcArrayEndTransactionInternal(proc, pgxact, proc->procArrayGroupMemberXid);
|
||||
ProcArrayEndTransactionInternal(nextproc, pgxact, nextproc->procArrayGroupMemberXid);
|
||||
|
||||
/* Move to next proc in list. */
|
||||
nextidx = pg_atomic_read_u32(&proc->procArrayGroupNext);
|
||||
nextidx = pg_atomic_read_u32(&nextproc->procArrayGroupNext);
|
||||
}
|
||||
|
||||
/* We're done with the lock now. */
|
||||
@ -578,18 +578,18 @@ ProcArrayGroupClearXid(PGPROC *proc, TransactionId latestXid)
|
||||
*/
|
||||
while (wakeidx != INVALID_PGPROCNO)
|
||||
{
|
||||
PGPROC *proc = &allProcs[wakeidx];
|
||||
PGPROC *nextproc = &allProcs[wakeidx];
|
||||
|
||||
wakeidx = pg_atomic_read_u32(&proc->procArrayGroupNext);
|
||||
pg_atomic_write_u32(&proc->procArrayGroupNext, INVALID_PGPROCNO);
|
||||
wakeidx = pg_atomic_read_u32(&nextproc->procArrayGroupNext);
|
||||
pg_atomic_write_u32(&nextproc->procArrayGroupNext, INVALID_PGPROCNO);
|
||||
|
||||
/* ensure all previous writes are visible before follower continues. */
|
||||
pg_write_barrier();
|
||||
|
||||
proc->procArrayGroupMember = false;
|
||||
nextproc->procArrayGroupMember = false;
|
||||
|
||||
if (proc != MyProc)
|
||||
PGSemaphoreUnlock(proc->sem);
|
||||
if (nextproc != MyProc)
|
||||
PGSemaphoreUnlock(nextproc->sem);
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user