Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit 1a01560

Browse files
committed
Rename LWLockWaitUntilFree to LWLockAcquireOrWait.
LWLockAcquireOrWait makes it more clear that the lock is acquired if it's free.
1 parent af7dd69 commit 1a01560

File tree

3 files changed

+8
-8
lines changed

3 files changed

+8
-8
lines changed

src/backend/access/transam/xlog.c

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2145,7 +2145,7 @@ XLogFlush(XLogRecPtr record)
21452145
* helps to maintain a good rate of group committing when the system
21462146
* is bottlenecked by the speed of fsyncing.
21472147
*/
2148-
if (!LWLockWaitUntilFree(WALWriteLock, LW_EXCLUSIVE))
2148+
if (!LWLockAcquireOrWait(WALWriteLock, LW_EXCLUSIVE))
21492149
{
21502150
/*
21512151
* The lock is now free, but we didn't acquire it yet. Before we

src/backend/storage/lmgr/lwlock.c

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -572,7 +572,7 @@ LWLockConditionalAcquire(LWLockId lockid, LWLockMode mode)
572572
}
573573

574574
/*
575-
* LWLockWaitUntilFree - Wait until a lock is free
575+
* LWLockAcquireOrWait - Acquire lock, or wait until it's free
576576
*
577577
* The semantics of this function are a bit funky. If the lock is currently
578578
* free, it is acquired in the given mode, and the function returns true. If
@@ -586,14 +586,14 @@ LWLockConditionalAcquire(LWLockId lockid, LWLockMode mode)
586586
* wake up, observe that their records have already been flushed, and return.
587587
*/
588588
bool
589-
LWLockWaitUntilFree(LWLockId lockid, LWLockMode mode)
589+
LWLockAcquireOrWait(LWLockId lockid, LWLockMode mode)
590590
{
591591
volatile LWLock *lock = &(LWLockArray[lockid].lock);
592592
PGPROC *proc = MyProc;
593593
bool mustwait;
594594
int extraWaits = 0;
595595

596-
PRINT_LWDEBUG("LWLockWaitUntilFree", lockid, lock);
596+
PRINT_LWDEBUG("LWLockAcquireOrWait", lockid, lock);
597597

598598
#ifdef LWLOCK_STATS
599599
/* Set up local count state first time through in a given process */
@@ -665,7 +665,7 @@ LWLockWaitUntilFree(LWLockId lockid, LWLockMode mode)
665665
* Wait until awakened. Like in LWLockAcquire, be prepared for bogus
666666
* wakups, because we share the semaphore with ProcWaitForSignal.
667667
*/
668-
LOG_LWDEBUG("LWLockWaitUntilFree", lockid, "waiting");
668+
LOG_LWDEBUG("LWLockAcquireOrWait", lockid, "waiting");
669669

670670
#ifdef LWLOCK_STATS
671671
block_counts[lockid]++;
@@ -684,7 +684,7 @@ LWLockWaitUntilFree(LWLockId lockid, LWLockMode mode)
684684

685685
TRACE_POSTGRESQL_LWLOCK_WAIT_DONE(lockid, mode);
686686

687-
LOG_LWDEBUG("LWLockWaitUntilFree", lockid, "awakened");
687+
LOG_LWDEBUG("LWLockAcquireOrWait", lockid, "awakened");
688688
}
689689
else
690690
{
@@ -702,7 +702,7 @@ LWLockWaitUntilFree(LWLockId lockid, LWLockMode mode)
702702
{
703703
/* Failed to get lock, so release interrupt holdoff */
704704
RESUME_INTERRUPTS();
705-
LOG_LWDEBUG("LWLockWaitUntilFree", lockid, "failed");
705+
LOG_LWDEBUG("LWLockAcquireOrWait", lockid, "failed");
706706
TRACE_POSTGRESQL_LWLOCK_WAIT_UNTIL_FREE_FAIL(lockid, mode);
707707
}
708708
else

src/include/storage/lwlock.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -108,7 +108,7 @@ extern bool Trace_lwlocks;
108108
extern LWLockId LWLockAssign(void);
109109
extern void LWLockAcquire(LWLockId lockid, LWLockMode mode);
110110
extern bool LWLockConditionalAcquire(LWLockId lockid, LWLockMode mode);
111-
extern bool LWLockWaitUntilFree(LWLockId lockid, LWLockMode mode);
111+
extern bool LWLockAcquireOrWait(LWLockId lockid, LWLockMode mode);
112112
extern void LWLockRelease(LWLockId lockid);
113113
extern void LWLockReleaseAll(void);
114114
extern bool LWLockHeldByMe(LWLockId lockid);

0 commit comments

Comments
 (0)