diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2007-06-19 22:01:15 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2007-06-19 22:01:15 +0000 |
commit | 9cce91dba0de4f00b98f7e12535cc0efd33c69a8 (patch) | |
tree | 0878759128113458f0403bee25d5b8ea52ceef93 /src | |
parent | ec4595dae15b85ead2e563760ef99af0cff348ab (diff) |
Only log 'process acquired lock' if we actually did get the lock. This
test seems inessential right now since the only control path for not
getting the lock is via CHECK_FOR_INTERRUPTS which won't return control
to ProcSleep, but it would be important if we ever allow the deadlock
code to kill someone else's transaction instead of our own.
Diffstat (limited to 'src')
-rw-r--r-- | src/backend/storage/lmgr/proc.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/src/backend/storage/lmgr/proc.c b/src/backend/storage/lmgr/proc.c index d8cc9e11758..367c0e6cf81 100644 --- a/src/backend/storage/lmgr/proc.c +++ b/src/backend/storage/lmgr/proc.c @@ -8,7 +8,7 @@ * * * IDENTIFICATION - * $PostgreSQL: pgsql/src/backend/storage/lmgr/proc.c,v 1.189 2007/06/19 20:13:21 tgl Exp $ + * $PostgreSQL: pgsql/src/backend/storage/lmgr/proc.c,v 1.190 2007/06/19 22:01:15 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -887,7 +887,7 @@ ProcSleep(LOCALLOCK *locallock, LockMethod lockMethodTable) switch (deadlock_state) { case DS_NOT_YET_CHECKED: - /* Spurious wakeup as described above */ + /* Lock granted, or spurious wakeup as described above */ break; case DS_NO_DEADLOCK: case DS_SOFT_DEADLOCK: @@ -918,16 +918,17 @@ ProcSleep(LOCALLOCK *locallock, LockMethod lockMethodTable) (errmsg("process %d still waiting for %s on %s after %ld.%03d ms", MyProcPid, modename, buf.data, msecs, usecs))); - else + else if (MyProc->waitStatus == STATUS_OK) ereport(LOG, (errmsg("process %d acquired %s on %s after %ld.%03d ms", MyProcPid, modename, buf.data, msecs, usecs))); + /* ERROR will be reported later, so no message here */ pfree(buf.data); break; } case DS_HARD_DEADLOCK: - /* ERROR will be reported below, so no message here */ + /* ERROR will be reported later, so no message here */ break; } } |