diff options
author | Robert Haas <rhaas@postgresql.org> | 2022-04-08 11:44:17 -0400 |
---|---|---|
committer | Robert Haas <rhaas@postgresql.org> | 2022-04-08 11:44:17 -0400 |
commit | f37015a1617d4e6b4b50a1c789b382d9a654fcd9 (patch) | |
tree | 69eefbb12bb4bfa426f188b78bdd3ebdc01d9858 /src/backend/storage/ipc | |
parent | 891624f0ec3b3d353269b0bfc7bc545333d6b4d5 (diff) | |
download | postgresql-f37015a1617d4e6b4b50a1c789b382d9a654fcd9.tar.gz postgresql-f37015a1617d4e6b4b50a1c789b382d9a654fcd9.zip |
Rename delayChkpt to delayChkptFlags.
Before commit 412ad7a55639516f284cd0ef9757d6ae5c7abd43, delayChkpt
was a Boolean. Now it's an integer. Extensions using it need to be
appropriately updated, so let's rename the field to make sure that
a hard compilation failure occurs.
Replacing delayChkpt with delayChkptFlags made a few comments extend
past 80 characters, so I reflowed them and changed some wording very
slightly.
The back-branches will need a different change to restore compatibility
with existing minor releases; this is just for master.
Per suggestion from Tom Lane.
Discussion: http://postgr.es/m/a7880f4d-1d74-582a-ada7-dad168d046d1@enterprisedb.com
Diffstat (limited to 'src/backend/storage/ipc')
-rw-r--r-- | src/backend/storage/ipc/procarray.c | 29 |
1 files changed, 15 insertions, 14 deletions
diff --git a/src/backend/storage/ipc/procarray.c b/src/backend/storage/ipc/procarray.c index 735763cc242..603f6aba71f 100644 --- a/src/backend/storage/ipc/procarray.c +++ b/src/backend/storage/ipc/procarray.c @@ -700,7 +700,7 @@ ProcArrayEndTransaction(PGPROC *proc, TransactionId latestXid) proc->xmin = InvalidTransactionId; /* be sure this is cleared in abort */ - proc->delayChkpt = 0; + proc->delayChkptFlags = 0; proc->recoveryConflictPending = false; @@ -742,7 +742,7 @@ ProcArrayEndTransactionInternal(PGPROC *proc, TransactionId latestXid) proc->xmin = InvalidTransactionId; /* be sure this is cleared in abort */ - proc->delayChkpt = 0; + proc->delayChkptFlags = 0; proc->recoveryConflictPending = false; @@ -929,7 +929,7 @@ ProcArrayClearTransaction(PGPROC *proc) proc->recoveryConflictPending = false; Assert(!(proc->statusFlags & PROC_VACUUM_STATE_MASK)); - Assert(!proc->delayChkpt); + Assert(!proc->delayChkptFlags); /* * Need to increment completion count even though transaction hasn't @@ -3059,19 +3059,20 @@ GetOldestSafeDecodingTransactionId(bool catalogOnly) * delaying checkpoint because they have critical actions in progress. * * Constructs an array of VXIDs of transactions that are currently in commit - * critical sections, as shown by having specified delayChkpt bits set in their - * PGPROC. + * critical sections, as shown by having specified delayChkptFlags bits set + * in their PGPROC. * * Returns a palloc'd array that should be freed by the caller. * *nvxids is the number of valid entries. * - * Note that because backends set or clear delayChkpt without holding any lock, - * the result is somewhat indeterminate, but we don't really care. Even in - * a multiprocessor with delayed writes to shared memory, it should be certain - * that setting of delayChkpt will propagate to shared memory when the backend - * takes a lock, so we cannot fail to see a virtual xact as delayChkpt if - * it's already inserted its commit record. Whether it takes a little while - * for clearing of delayChkpt to propagate is unimportant for correctness. + * Note that because backends set or clear delayChkptFlags without holding any + * lock, the result is somewhat indeterminate, but we don't really care. Even + * in a multiprocessor with delayed writes to shared memory, it should be + * certain that setting of delayChkptFlags will propagate to shared memory + * when the backend takes a lock, so we cannot fail to see a virtual xact as + * delayChkptFlags if it's already inserted its commit record. Whether it + * takes a little while for clearing of delayChkptFlags to propagate is + * unimportant for correctness. */ VirtualTransactionId * GetVirtualXIDsDelayingChkpt(int *nvxids, int type) @@ -3094,7 +3095,7 @@ GetVirtualXIDsDelayingChkpt(int *nvxids, int type) int pgprocno = arrayP->pgprocnos[index]; PGPROC *proc = &allProcs[pgprocno]; - if ((proc->delayChkpt & type) != 0) + if ((proc->delayChkptFlags & type) != 0) { VirtualTransactionId vxid; @@ -3138,7 +3139,7 @@ HaveVirtualXIDsDelayingChkpt(VirtualTransactionId *vxids, int nvxids, int type) GET_VXID_FROM_PGPROC(vxid, *proc); - if ((proc->delayChkpt & type) != 0 && + if ((proc->delayChkptFlags & type) != 0 && VirtualTransactionIdIsValid(vxid)) { int i; |