aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/init/postinit.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/backend/utils/init/postinit.c')
-rw-r--r--src/backend/utils/init/postinit.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/backend/utils/init/postinit.c b/src/backend/utils/init/postinit.c
index 82532a196b0..15226b92bc1 100644
--- a/src/backend/utils/init/postinit.c
+++ b/src/backend/utils/init/postinit.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/utils/init/postinit.c,v 1.172 2006/11/05 22:42:09 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/init/postinit.c,v 1.172.2.1 2008/09/11 14:01:16 alvherre Exp $
*
*
*-------------------------------------------------------------------------
@@ -42,6 +42,7 @@
#include "utils/guc.h"
#include "utils/portal.h"
#include "utils/relcache.h"
+#include "utils/tqual.h"
#include "utils/syscache.h"
#include "pgstat.h"
@@ -380,10 +381,15 @@ InitPostgres(const char *dbname, const char *username)
on_shmem_exit(ShutdownPostgres, 0);
/*
- * Start a new transaction here before first access to db
+ * Start a new transaction here before first access to db, and get a
+ * snapshot. We don't have a use for the snapshot itself, but we're
+ * interested in the secondary effect that it sets RecentGlobalXmin.
*/
if (!bootstrap)
+ {
StartTransactionCommand();
+ (void) GetTransactionSnapshot();
+ }
/*
* Now that we have a transaction, we can take locks. Take a writer's