summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorHeikki Linnakangas <heikki.linnakangas@iki.fi>2010-01-28 07:31:42 +0000
committerHeikki Linnakangas <heikki.linnakangas@iki.fi>2010-01-28 07:31:42 +0000
commite0e8b9634555f876570d3c1596a50419848a1046 (patch)
tree55028000a2c0d285e8b06990b92d45a2c5476a15 /src
parente3f36838e5b2666a15286b137bb11f35a7245848 (diff)
downloadpostgresql-e0e8b9634555f876570d3c1596a50419848a1046.tar.gz
Change a few remaining calls of XLogArchivingActive() to use
XLogIsNeeded() instead, to determine if an otherwise non-logged operation needs to be logged in WAL for standby servers. Fujii Masao
Diffstat (limited to 'src')
-rw-r--r--src/backend/commands/tablecmds.c7
-rw-r--r--src/backend/commands/vacuumlazy.c4
-rw-r--r--src/include/access/xlog.h6
3 files changed, 10 insertions, 7 deletions
diff --git a/src/backend/commands/tablecmds.c b/src/backend/commands/tablecmds.c
index e1b4532583..89447d3678 100644
--- a/src/backend/commands/tablecmds.c
+++ b/src/backend/commands/tablecmds.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/commands/tablecmds.c,v 1.318 2010/01/22 16:40:18 rhaas Exp $
+ * $PostgreSQL: pgsql/src/backend/commands/tablecmds.c,v 1.319 2010/01/28 07:31:42 heikki Exp $
*
*-------------------------------------------------------------------------
*/
@@ -2998,7 +2998,8 @@ ATRewriteTable(AlteredTableInfo *tab, Oid OIDNewHeap)
* Prepare a BulkInsertState and options for heap_insert. Because
* we're building a new heap, we can skip WAL-logging and fsync it
* to disk at the end instead (unless WAL-logging is required for
- * archiving). The FSM is empty too, so don't bother using it.
+ * archiving or streaming replication). The FSM is empty too,
+ * so don't bother using it.
*/
if (newrel)
{
@@ -3006,7 +3007,7 @@ ATRewriteTable(AlteredTableInfo *tab, Oid OIDNewHeap)
bistate = GetBulkInsertState();
hi_options = HEAP_INSERT_SKIP_FSM;
- if (!XLogArchivingActive())
+ if (!XLogIsNeeded())
hi_options |= HEAP_INSERT_SKIP_WAL;
}
else
diff --git a/src/backend/commands/vacuumlazy.c b/src/backend/commands/vacuumlazy.c
index dc80a23fa0..3c7dc2a3d4 100644
--- a/src/backend/commands/vacuumlazy.c
+++ b/src/backend/commands/vacuumlazy.c
@@ -29,7 +29,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/commands/vacuumlazy.c,v 1.127 2010/01/02 16:57:40 momjian Exp $
+ * $PostgreSQL: pgsql/src/backend/commands/vacuumlazy.c,v 1.128 2010/01/28 07:31:42 heikki Exp $
*
*-------------------------------------------------------------------------
*/
@@ -288,7 +288,7 @@ vacuum_log_cleanup_info(Relation rel, LVRelStats *vacrelstats)
* No need to log changes for temp tables, they do not contain
* data visible on the standby server.
*/
- if (rel->rd_istemp || !XLogArchivingActive())
+ if (rel->rd_istemp || !XLogIsNeeded())
return;
(void) log_heap_cleanup_info(rel->rd_node, vacrelstats->latestRemovedXid);
diff --git a/src/include/access/xlog.h b/src/include/access/xlog.h
index ca4d7f289a..d7aeb2fe06 100644
--- a/src/include/access/xlog.h
+++ b/src/include/access/xlog.h
@@ -6,7 +6,7 @@
* Portions Copyright (c) 1996-2010, PostgreSQL Global Development Group
* Portions Copyright (c) 1994, Regents of the University of California
*
- * $PostgreSQL: pgsql/src/include/access/xlog.h,v 1.98 2010/01/20 19:43:40 heikki Exp $
+ * $PostgreSQL: pgsql/src/include/access/xlog.h,v 1.99 2010/01/28 07:31:42 heikki Exp $
*/
#ifndef XLOG_H
#define XLOG_H
@@ -186,7 +186,6 @@ extern int MaxStandbyDelay;
#define XLogArchivingActive() (XLogArchiveMode)
#define XLogArchiveCommandSet() (XLogArchiveCommand[0] != '\0')
-#define XLogStandbyInfoActive() (XLogRequestRecoveryConnections && XLogArchiveMode)
/*
* This is in walsender.c, but declared here so that we don't need to include
@@ -200,6 +199,9 @@ extern int MaxWalSenders;
*/
#define XLogIsNeeded() (XLogArchivingActive() || (MaxWalSenders > 0))
+/* Do we need to WAL-log information required only for Hot Standby? */
+#define XLogStandbyInfoActive() (XLogRequestRecoveryConnections && XLogIsNeeded())
+
#ifdef WAL_DEBUG
extern bool XLOG_DEBUG;
#endif