From e6cba71503fa80948a050e7e0126e932855e92cc Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 11 Jun 2004 16:43:24 +0000 Subject: Add some code to Assert that when we release pin on a buffer, we are not holding the buffer's cntx_lock or io_in_progress_lock. A recent report from Litao Wu makes me wonder whether it is ever possible for us to drop a buffer and forget to release its cntx_lock. The Assert does not fire in the regression tests, but that proves little ... --- src/include/storage/lwlock.h | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'src/include') diff --git a/src/include/storage/lwlock.h b/src/include/storage/lwlock.h index e06d9a4bf77..b1f6fc95103 100644 --- a/src/include/storage/lwlock.h +++ b/src/include/storage/lwlock.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/storage/lwlock.h,v 1.11 2004/05/31 03:48:10 tgl Exp $ + * $PostgreSQL: pgsql/src/include/storage/lwlock.h,v 1.12 2004/06/11 16:43:24 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -62,6 +62,7 @@ extern void LWLockAcquire(LWLockId lockid, LWLockMode mode); extern bool LWLockConditionalAcquire(LWLockId lockid, LWLockMode mode); extern void LWLockRelease(LWLockId lockid); extern void LWLockReleaseAll(void); +extern bool LWLockHeldByMe(LWLockId lockid); extern int NumLWLocks(void); extern int LWLockShmemSize(void); -- cgit v1.2.3