00001 /* 00002 * xlogutils.h 00003 * 00004 * PostgreSQL transaction log manager utility routines 00005 * 00006 * Portions Copyright (c) 1996-2013, PostgreSQL Global Development Group 00007 * Portions Copyright (c) 1994, Regents of the University of California 00008 * 00009 * src/include/access/xlogutils.h 00010 */ 00011 #ifndef XLOG_UTILS_H 00012 #define XLOG_UTILS_H 00013 00014 #include "storage/bufmgr.h" 00015 00016 00017 extern bool XLogHaveInvalidPages(void); 00018 extern void XLogCheckInvalidPages(void); 00019 00020 extern void XLogDropRelation(RelFileNode rnode, ForkNumber forknum); 00021 extern void XLogDropDatabase(Oid dbid); 00022 extern void XLogTruncateRelation(RelFileNode rnode, ForkNumber forkNum, 00023 BlockNumber nblocks); 00024 00025 extern Buffer XLogReadBuffer(RelFileNode rnode, BlockNumber blkno, bool init); 00026 extern Buffer XLogReadBufferExtended(RelFileNode rnode, ForkNumber forknum, 00027 BlockNumber blkno, ReadBufferMode mode); 00028 00029 extern Relation CreateFakeRelcacheEntry(RelFileNode rnode); 00030 extern void FreeFakeRelcacheEntry(Relation fakerel); 00031 00032 #endif