summaryrefslogtreecommitdiff
path: root/src/backend/access/gist/gistxlog.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2006-08-07 16:57:57 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2006-08-07 16:57:57 +0000
commite002836913ce69ca3e501a6d2c42296f1d103998 (patch)
treec678bfba6916c7daa85c38f659cccae629867aac /src/backend/access/gist/gistxlog.c
parent977ac90001c0188289f3b20eac3720fc6b26f180 (diff)
downloadpostgresql-e002836913ce69ca3e501a6d2c42296f1d103998.tar.gz
Make recovery from WAL be restartable, by executing a checkpoint-like
operation every so often. This improves the usefulness of PITR log shipping for hot standby: formerly, if the standby server crashed, it was necessary to restart it from the last base backup and replay all the WAL since then. Now it will only need to reread about the same amount of WAL as the master server would. The behavior might also come in handy during a long PITR replay sequence. Simon Riggs, with some editorialization by Tom Lane.
Diffstat (limited to 'src/backend/access/gist/gistxlog.c')
-rw-r--r--src/backend/access/gist/gistxlog.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/backend/access/gist/gistxlog.c b/src/backend/access/gist/gistxlog.c
index 9694e32384..9680ed9619 100644
--- a/src/backend/access/gist/gistxlog.c
+++ b/src/backend/access/gist/gistxlog.c
@@ -8,7 +8,7 @@
* Portions Copyright (c) 1994, Regents of the University of California
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/access/gist/gistxlog.c,v 1.22 2006/07/14 14:52:16 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/access/gist/gistxlog.c,v 1.23 2006/08/07 16:57:56 tgl Exp $
*-------------------------------------------------------------------------
*/
#include "postgres.h"
@@ -818,6 +818,14 @@ gist_xlog_cleanup(void)
MemoryContextDelete(insertCtx);
}
+bool
+gist_safe_restartpoint(void)
+{
+ if (incomplete_inserts)
+ return false;
+ return true;
+}
+
XLogRecData *
formSplitRdata(RelFileNode node, BlockNumber blkno, bool page_is_leaf,