postgres.git / summary / log / commit / refs
commit 92a8d7610ea0f440a80328ced342b782180a3f43
Author: Fujii Masao <fujii@postgresql.org>
Date: Thu Sep 16 04:06:21 2021 +0000
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
src/backend/storage/ipc/procarray.c | 18 +++++++++---------
1 file changed, 9 insertions(+), 9 deletions(-)
diff --git a/src/backend/storage/ipc/procarray.c b/src/backend/storage/ipc/procarray.c
index 4b59903bc74..9fcd12020ae 100644
--- a/src/backend/storage/ipc/procarray.c
+++ b/src/backend/storage/ipc/procarray.c
@@ -840,12 +840,12 @@ ProcArrayGroupClearXid(PGPROC *proc, TransactionId latestXid)
/* Walk the list and clear all XIDs. */
while (nextidx != INVALID_PGPROCNO)
{
- PGPROC *proc = &allProcs[nextidx];
+ PGPROC *nextproc = &allProcs[nextidx];
- ProcArrayEndTransactionInternal(proc, proc->procArrayGroupMemberXid);
+ ProcArrayEndTransactionInternal(nextproc, 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. */
@@ -860,18 +860,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);
}
}
[parent: fe8821ca7da4]