diff --git a/src/backend/access/transam/clog.c b/src/backend/access/transam/clog.c
index 880f18c1473..499989cb3a1 100644
--- a/src/backend/access/transam/clog.c
+++ b/src/backend/access/transam/clog.c
@@ -305,7 +305,7 @@ TransactionIdSetPageStatus(TransactionId xid, int nsubxids,
 		 * update.  If that doesn't work out, fall back to waiting for the
 		 * lock to perform an update for this transaction only.
 		 */
-		if (LWLockConditionalAcquire(XactSLRULock, LW_EXCLUSIVE))
+		if (0)
 		{
 			/* Got the lock without waiting!  Do the update. */
 			TransactionIdSetPageStatusInternal(xid, nsubxids, subxids, status,
@@ -432,7 +432,6 @@ TransactionGroupUpdateXidStatus(TransactionId xid, XidStatus status,
 	proc->clogGroupMemberLsn = lsn;
 
 	nextidx = pg_atomic_read_u32(&procglobal->clogGroupFirst);
-
 	while (true)
 	{
 		/*
@@ -451,10 +450,15 @@ TransactionGroupUpdateXidStatus(TransactionId xid, XidStatus status,
 			ProcGlobal->allProcs[nextidx].clogGroupMemberPage != proc->clogGroupMemberPage)
 		{
 			proc->clogGroupMember = false;
+elog(WARNING, "TransactionGroupUpdateXidStatus: return false");
 			return false;
 		}
-
 		pg_atomic_write_u32(&proc->clogGroupNext, nextidx);
+do {
+instr_time t;
+INSTR_TIME_SET_CURRENT(t);
+if ((t.tv_nsec % 1000000L) < 10L) break;
+} while (1);
 
 		if (pg_atomic_compare_exchange_u32(&procglobal->clogGroupFirst,
 										   &nextidx,
