From b58c0411bad414a5dbde8b38f615867c68adf55c Mon Sep 17 00:00:00 2001 From: "Vadim B. Mikheev" Date: Fri, 20 Oct 2000 11:01:21 +0000 Subject: redo/undo support functions and cleanups. --- src/include/storage/bufmgr.h | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) (limited to 'src/include/storage/bufmgr.h') diff --git a/src/include/storage/bufmgr.h b/src/include/storage/bufmgr.h index 1a06953f513..551f98e75f9 100644 --- a/src/include/storage/bufmgr.h +++ b/src/include/storage/bufmgr.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2000, PostgreSQL, Inc * Portions Copyright (c) 1994, Regents of the University of California * - * $Id: bufmgr.h,v 1.40 2000/08/07 20:15:50 tgl Exp $ + * $Id: bufmgr.h,v 1.41 2000/10/20 11:01:21 vadim Exp $ * *------------------------------------------------------------------------- */ @@ -44,6 +44,17 @@ extern int ShowPinTrace; #define BUFFER_LOCK_SHARE 1 #define BUFFER_LOCK_EXCLUSIVE 2 +#define UnlockAndReleaseBuffer(buffer) \ +( \ + LockBuffer(buffer, BUFFER_LOCK_UNLOCK), \ + ReleaseBuffer(buffer) \ +) + +#define UnlockAndWriteBuffer(buffer) \ +( \ + LockBuffer(buffer, BUFFER_LOCK_UNLOCK), \ + WriteBuffer(buffer) \ +) /* * BufferIsValid @@ -163,4 +174,7 @@ extern void UnlockBuffers(void); extern void LockBuffer(Buffer buffer, int mode); extern void AbortBufferIO(void); +extern bool BufferIsUpdatable(Buffer buffer); +extern void MarkBufferForCleanup(Buffer buffer, void (*CleanupFunc)(Buffer)); + #endif -- cgit v1.2.3