From d6b8f637f9f3875208ac6cbaa9f1a4499496b96c Mon Sep 17 00:00:00 2001
From: "Vadim B. Mikheev" <vadim4o@yahoo.com>
Date: Fri, 18 Apr 1997 08:30:08 +0000
Subject: [PATCH] CommitInfoNeedsSave[buffer - 1] = 0 added to WriteBuffer(),
 FlushBuffer(), WriteNoReleaseBuffer().

---
 src/backend/storage/buffer/bufmgr.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/src/backend/storage/buffer/bufmgr.c b/src/backend/storage/buffer/bufmgr.c
index cd057a830a4..85a812d80aa 100644
--- a/src/backend/storage/buffer/bufmgr.c
+++ b/src/backend/storage/buffer/bufmgr.c
@@ -7,7 +7,7 @@
  *
  *
  * IDENTIFICATION
- *    $Header: /cvsroot/pgsql/src/backend/storage/buffer/bufmgr.c,v 1.12 1997/04/18 02:53:23 vadim Exp $
+ *    $Header: /cvsroot/pgsql/src/backend/storage/buffer/bufmgr.c,v 1.13 1997/04/18 08:30:08 vadim Exp $
  *
  *-------------------------------------------------------------------------
  */
@@ -663,6 +663,7 @@ WriteBuffer(Buffer buffer)
 	bufHdr->flags |= (BM_DIRTY | BM_JUST_DIRTIED);
 	UnpinBuffer(bufHdr);
 	SpinRelease(BufMgrLock);
+	CommitInfoNeedsSave[buffer - 1] = 0;
     }
     return(TRUE);
 } 
@@ -784,6 +785,7 @@ FlushBuffer(Buffer buffer, bool release)
     if ( release )
     	UnpinBuffer(bufHdr);
     SpinRelease(BufMgrLock);
+    CommitInfoNeedsSave[buffer - 1] = 0;
     
     return(STATUS_OK);
 }
@@ -816,6 +818,7 @@ WriteNoReleaseBuffer(Buffer buffer)
 	SpinAcquire(BufMgrLock);
 	bufHdr->flags |= (BM_DIRTY | BM_JUST_DIRTIED);
 	SpinRelease(BufMgrLock);
+    	CommitInfoNeedsSave[buffer - 1] = 0;
     }
     return(STATUS_OK);
 }
@@ -1765,5 +1768,6 @@ int SetBufferWriteMode (int mode)
 
 void SetBufferCommitInfoNeedsSave(Buffer buffer)
 {
-    CommitInfoNeedsSave[buffer - 1]++;
+    if ( !BufferIsLocal(buffer) )
+    	CommitInfoNeedsSave[buffer - 1]++;
 }
-- 
GitLab