aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAmit Kapila <akapila@postgresql.org>2021-11-02 09:10:17 +0530
committerAmit Kapila <akapila@postgresql.org>2021-11-02 09:11:05 +0530
commit335397456b7e3f9f619038cb322fbfc9dd649d4f (patch)
treee2c545cbd7776e7c3bc73381dac57919573d753f
parent71db6459e6e4ef623e98f3b1e3e9fed1bfb0ae3b (diff)
downloadpostgresql-335397456b7e3f9f619038cb322fbfc9dd649d4f.tar.gz
postgresql-335397456b7e3f9f619038cb322fbfc9dd649d4f.zip
Move MarkCurrentTransactionIdLoggedIfAny() out of the critical section.
We don't modify any shared state in this function which could cause problems for any concurrent session. This will make it look similar to the other updates for the same structure (TransactionState) which avoids confusion for future readers of code. Author: Dilip Kumar Reviewed-by: Amit Kapila Discussion: https://postgr.es/m/E1mSoYz-0007Fh-D9@gemulon.postgresql.org
-rw-r--r--src/backend/access/transam/xlog.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/backend/access/transam/xlog.c b/src/backend/access/transam/xlog.c
index 6aca1fd75d9..0a0771a18eb 100644
--- a/src/backend/access/transam/xlog.c
+++ b/src/backend/access/transam/xlog.c
@@ -1169,10 +1169,10 @@ XLogInsertRecord(XLogRecData *rdata,
*/
WALInsertLockRelease();
- MarkCurrentTransactionIdLoggedIfAny();
-
END_CRIT_SECTION();
+ MarkCurrentTransactionIdLoggedIfAny();
+
/*
* Mark top transaction id is logged (if needed) so that we should not try
* to log it again with the next WAL record in the current subtransaction.