]> granicus.if.org Git - postgresql/commitdiff
Remove obsolete comments about sempahores from proc.c.
authorThomas Munro <tmunro@postgresql.org>
Thu, 20 Jun 2019 22:57:07 +0000 (10:57 +1200)
committerThomas Munro <tmunro@postgresql.org>
Thu, 20 Jun 2019 22:57:07 +0000 (10:57 +1200)
Commit 6753333f switched from a semaphore-based wait to a latch-based
wait for ProcSleep()/ProcWakeup(), but left behind some stray references
to semaphores.

Back-patch to 9.5.

Reviewed-by: Daniel Gustafsson, Michael Paquier
Discussion: https://postgr.es/m/CA+hUKGLs5H6zhmgTijZ1OaJvC1sG0=AFXc1aHuce32tKiQrdEA@mail.gmail.com

src/backend/storage/lmgr/proc.c

index 0da5b19719fcd3817592c002e049f0089a9e8137..498373fd0ee1b4b40f3abeeffd149bfa1ddaa1dc 100644 (file)
@@ -1196,8 +1196,7 @@ ProcSleep(LOCALLOCK *locallock, LockMethod lockMethodTable)
 
        /*
         * If we detected deadlock, give up without waiting.  This must agree with
-        * CheckDeadLock's recovery code, except that we shouldn't release the
-        * semaphore since we haven't tried to lock it yet.
+        * CheckDeadLock's recovery code.
         */
        if (early_deadlock)
        {
@@ -1233,9 +1232,9 @@ ProcSleep(LOCALLOCK *locallock, LockMethod lockMethodTable)
 
        /*
         * Set timer so we can wake up after awhile and check for a deadlock. If a
-        * deadlock is detected, the handler releases the process's semaphore and
-        * sets MyProc->waitStatus = STATUS_ERROR, allowing us to know that we
-        * must report failure rather than success.
+        * deadlock is detected, the handler sets MyProc->waitStatus =
+        * STATUS_ERROR, allowing us to know that we must report failure rather
+        * than success.
         *
         * By delaying the check until we've waited for a bit, we can avoid
         * running the rather expensive deadlock-check code in most cases.
@@ -1578,7 +1577,7 @@ ProcSleep(LOCALLOCK *locallock, LockMethod lockMethodTable)
 
 
 /*
- * ProcWakeup -- wake up a process by releasing its private semaphore.
+ * ProcWakeup -- wake up a process by setting its latch.
  *
  *      Also remove the process from the wait queue and set its links invalid.
  *      RETURN: the next process in the wait queue.
@@ -1713,8 +1712,7 @@ CheckDeadLock(void)
         * we know that we don't have to wait anymore.
         *
         * We check by looking to see if we've been unlinked from the wait queue.
-        * This is quicker than checking our semaphore's state, since no kernel
-        * call is needed, and it is safe because we hold the lock partition lock.
+        * This is safe because we hold the lock partition lock.
         */
        if (MyProc->links.prev == NULL ||
                MyProc->links.next == NULL)