diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2004-08-23 23:22:45 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2004-08-23 23:22:45 +0000 |
commit | 4dbb880d3c77a580ef9634b93af26eaf64484ddb (patch) | |
tree | 9caf91a5e2b4746f56eaa769033ecaeef06ca4d6 /src/include/access/clog.h | |
parent | 059912ce2e1952a591d2d61d666b07aed5fa8ad6 (diff) | |
download | postgresql-4dbb880d3c77a580ef9634b93af26eaf64484ddb.tar.gz postgresql-4dbb880d3c77a580ef9634b93af26eaf64484ddb.zip |
Rearrange pg_subtrans handling as per recent discussion. pg_subtrans
updates are no longer WAL-logged nor even fsync'd; we do not need to,
since after a crash no old pg_subtrans data is needed again. We truncate
pg_subtrans to RecentGlobalXmin at each checkpoint. slru.c's API is
refactored a little bit to separate out the necessary decisions.
Diffstat (limited to 'src/include/access/clog.h')
-rw-r--r-- | src/include/access/clog.h | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/include/access/clog.h b/src/include/access/clog.h index 2df1cedc1c9..0b8fa120756 100644 --- a/src/include/access/clog.h +++ b/src/include/access/clog.h @@ -6,7 +6,7 @@ * Portions Copyright (c) 1996-2003, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/access/clog.h,v 1.9 2004/07/01 00:51:38 tgl Exp $ + * $PostgreSQL: pgsql/src/include/access/clog.h,v 1.10 2004/08/23 23:22:45 tgl Exp $ */ #ifndef CLOG_H #define CLOG_H @@ -27,9 +27,6 @@ typedef int XidStatus; #define TRANSACTION_STATUS_ABORTED 0x02 #define TRANSACTION_STATUS_SUB_COMMITTED 0x03 -/* exported because lwlock.c needs it */ -#define NUM_CLOG_BUFFERS 8 - extern void TransactionIdSetStatus(TransactionId xid, XidStatus status); extern XidStatus TransactionIdGetStatus(TransactionId xid); @@ -42,6 +39,12 @@ extern void ShutdownCLOG(void); extern void CheckPointCLOG(void); extern void ExtendCLOG(TransactionId newestXact); extern void TruncateCLOG(TransactionId oldestXact); -extern void clog_zeropage_redo(int pageno); + +/* XLOG stuff */ +#define CLOG_ZEROPAGE 0x00 + +extern void clog_redo(XLogRecPtr lsn, XLogRecord *record); +extern void clog_undo(XLogRecPtr lsn, XLogRecord *record); +extern void clog_desc(char *buf, uint8 xl_info, char *rec); #endif /* CLOG_H */ |