From 0ffe17aec61a14d27625899c221862651a502ab7 Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Sun, 28 Nov 1999 01:58:08 +0000 Subject: [PATCH] lmgr.c didn't check for failure return from LockAcquire(). Boo hiss. --- src/backend/storage/lmgr/lmgr.c | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/backend/storage/lmgr/lmgr.c b/src/backend/storage/lmgr/lmgr.c index 86834f5d883..6d07595ad19 100644 --- a/src/backend/storage/lmgr/lmgr.c +++ b/src/backend/storage/lmgr/lmgr.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/lmgr.c,v 1.36 1999/11/17 23:51:21 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/storage/lmgr/lmgr.c,v 1.37 1999/11/28 01:58:08 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -144,7 +144,8 @@ LockRelation(Relation relation, LOCKMODE lockmode) tag.dbId = relation->rd_lockInfo.lockRelId.dbId; tag.objId.blkno = InvalidBlockNumber; - LockAcquire(LockTableId, &tag, lockmode); + if (! LockAcquire(LockTableId, &tag, lockmode)) + elog(ERROR, "LockRelation: LockAcquire failed"); /* * Check to see if the relcache entry has been invalidated @@ -192,7 +193,8 @@ LockPage(Relation relation, BlockNumber blkno, LOCKMODE lockmode) tag.dbId = relation->rd_lockInfo.lockRelId.dbId; tag.objId.blkno = blkno; - LockAcquire(LockTableId, &tag, lockmode); + if (! LockAcquire(LockTableId, &tag, lockmode)) + elog(ERROR, "LockPage: LockAcquire failed"); } /* @@ -227,7 +229,8 @@ XactLockTableInsert(TransactionId xid) tag.dbId = InvalidOid; tag.objId.xid = xid; - LockAcquire(LockTableId, &tag, ExclusiveLock); + if (! LockAcquire(LockTableId, &tag, ExclusiveLock)) + elog(ERROR, "XactLockTableInsert: LockAcquire failed"); } void @@ -259,7 +262,9 @@ XactLockTableWait(TransactionId xid) tag.dbId = InvalidOid; tag.objId.xid = xid; - LockAcquire(LockTableId, &tag, ShareLock); + if (! LockAcquire(LockTableId, &tag, ShareLock)) + elog(ERROR, "XactLockTableWait: LockAcquire failed"); + LockRelease(LockTableId, &tag, ShareLock); /*