diff options
| author | Robert Haas <rhaas@postgresql.org> | 2010-08-13 15:45:17 +0000 | 
|---|---|---|
| committer | Robert Haas <rhaas@postgresql.org> | 2010-08-13 15:45:17 +0000 | 
| commit | 361cadb224ffdd99ade5b9c4c21c042c3cd24059 (patch) | |
| tree | a5c070142a9adbf9ff175f7a4c9973b3e15de598 /src/backend/access/transam | |
| parent | e507a3ee7b47185a8f8fe28dc22c0ed94d5b218f (diff) | |
Make RecordTransactionCommit() respect wal_level.
Since the only purpose of WAL-loggin SharedInvalidationMessages is to support
Hot Standby operation, they needn't be included when wal_level < hot_standby.
Back-patch to 9.0.
Review by Heikki Linnakanagas and Fujii Masao.
Diffstat (limited to 'src/backend/access/transam')
| -rw-r--r-- | src/backend/access/transam/xact.c | 11 | 
1 files changed, 6 insertions, 5 deletions
diff --git a/src/backend/access/transam/xact.c b/src/backend/access/transam/xact.c index a8fdede5340..8436deaa1f5 100644 --- a/src/backend/access/transam/xact.c +++ b/src/backend/access/transam/xact.c @@ -10,7 +10,7 @@   *   *   * IDENTIFICATION - *	  $PostgreSQL: pgsql/src/backend/access/transam/xact.c,v 1.293.2.3 2010/08/12 23:25:45 rhaas Exp $ + *	  $PostgreSQL: pgsql/src/backend/access/transam/xact.c,v 1.293.2.4 2010/08/13 15:45:17 rhaas Exp $   *   *-------------------------------------------------------------------------   */ @@ -915,15 +915,16 @@ RecordTransactionCommit(void)  	bool		haveNonTemp;  	int			nchildren;  	TransactionId *children; -	int			nmsgs; +	int			nmsgs = 0;  	SharedInvalidationMessage *invalMessages = NULL; -	bool		RelcacheInitFileInval; +	bool		RelcacheInitFileInval = false;  	/* Get data needed for commit record */  	nrels = smgrGetPendingDeletes(true, &rels, &haveNonTemp);  	nchildren = xactGetCommittedChildren(&children); -	nmsgs = xactGetCommittedInvalidationMessages(&invalMessages, -												 &RelcacheInitFileInval); +	if (XLogStandbyInfoActive()) +		nmsgs = xactGetCommittedInvalidationMessages(&invalMessages, +													 &RelcacheInitFileInval);  	/*  	 * If we haven't been assigned an XID yet, we neither can, nor do we want  | 
