summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2015-02-11 21:02:07 -0500
committerBruce Momjian <bruce@momjian.us>2015-02-11 21:02:12 -0500
commitd99cf27b7fc333b58205d309d823f861c9487fad (patch)
tree55fe2b3defddff2b4f9f0c22bc3f52715cae3243
parent0168fb07dad578433c5819bcaa3fc71a5a9dc0eb (diff)
pg_upgrade: preserve freeze info for postgres/template1 dbs
pg_database.datfrozenxid and pg_database.datminmxid were not preserved for the 'postgres' and 'template1' databases. This could cause missing clog file errors on access to user tables and indexes after upgrades in these databases. Backpatch through 9.0
-rw-r--r--src/bin/pg_dump/pg_dumpall.c20
1 files changed, 10 insertions, 10 deletions
diff --git a/src/bin/pg_dump/pg_dumpall.c b/src/bin/pg_dump/pg_dumpall.c
index 9d5e323552c..5cb7f442d90 100644
--- a/src/bin/pg_dump/pg_dumpall.c
+++ b/src/bin/pg_dump/pg_dumpall.c
@@ -1356,17 +1356,17 @@ dumpCreateDB(PGconn *conn)
appendStringLiteralConn(buf, dbname, conn);
appendPQExpBuffer(buf, ";\n");
}
+ }
- if (binary_upgrade)
- {
- appendPQExpBuffer(buf, "-- For binary upgrade, set datfrozenxid.\n");
- appendPQExpBuffer(buf, "UPDATE pg_catalog.pg_database "
- "SET datfrozenxid = '%u' "
- "WHERE datname = ",
- dbfrozenxid);
- appendStringLiteralConn(buf, dbname, conn);
- appendPQExpBuffer(buf, ";\n");
- }
+ if (binary_upgrade)
+ {
+ appendPQExpBuffer(buf, "-- For binary upgrade, set datfrozenxid.\n");
+ appendPQExpBuffer(buf, "UPDATE pg_catalog.pg_database "
+ "SET datfrozenxid = '%u' "
+ "WHERE datname = ",
+ dbfrozenxid);
+ appendStringLiteralConn(buf, dbname, conn);
+ appendPQExpBuffer(buf, ";\n");
}
if (!skip_acls &&