]> granicus.if.org Git - postgresql/commitdiff
Assert that BufferIsPinned() in IncrBufferRefCount(), rather than using
authorNeil Conway <neilc@samurai.com>
Wed, 24 Nov 2004 02:56:17 +0000 (02:56 +0000)
committerNeil Conway <neilc@samurai.com>
Wed, 24 Nov 2004 02:56:17 +0000 (02:56 +0000)
a home-brewed combination of assertions that boiled down to the same
thing.

src/backend/storage/buffer/bufmgr.c

index c96c635d0a6c67b2bac466b9f46c159ac1d571aa..71998190ff3ab1a14c42e8e41d2c3618a15eb295 100644 (file)
@@ -8,7 +8,7 @@
  *
  *
  * IDENTIFICATION
- *       $PostgreSQL: pgsql/src/backend/storage/buffer/bufmgr.c,v 1.181 2004/10/17 22:01:50 tgl Exp $
+ *       $PostgreSQL: pgsql/src/backend/storage/buffer/bufmgr.c,v 1.182 2004/11/24 02:56:17 neilc Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -1549,25 +1549,18 @@ ReleaseBuffer(Buffer buffer)
  *             at least once.
  *
  *             This function cannot be used on a buffer we do not have pinned,
- *             because it doesn't change the shared buffer state.  Therefore the
- *             Assert checks are for refcount > 0.  Someone got this wrong once...
+ *             because it doesn't change the shared buffer state.
  */
 void
 IncrBufferRefCount(Buffer buffer)
 {
-       Assert(BufferIsValid(buffer));
+       Assert(BufferIsPinned(buffer));
        ResourceOwnerEnlargeBuffers(CurrentResourceOwner);
        ResourceOwnerRememberBuffer(CurrentResourceOwner, buffer);
        if (BufferIsLocal(buffer))
-       {
-               Assert(LocalRefCount[-buffer - 1] > 0);
                LocalRefCount[-buffer - 1]++;
-       }
        else
-       {
-               Assert(PrivateRefCount[buffer - 1] > 0);
                PrivateRefCount[buffer - 1]++;
-       }
 }
 
 #ifdef NOT_USED