pg_dump: Refactor dumpDatabase()
authorPeter Eisentraut <peter@eisentraut.org>
Tue, 4 Jan 2022 15:19:48 +0000 (16:19 +0100)
committerPeter Eisentraut <peter@eisentraut.org>
Tue, 4 Jan 2022 15:19:48 +0000 (16:19 +0100)
Rearrange the version-dependent pieces in the new more modular style.

src/bin/pg_dump/pg_dump.c

index 7af6dfa575901c1e104659c47dd57c8fb3010c6b..4fec88b5e5be8ed62a4a6eb31b87dd18d27a6f76 100644 (file)
@@ -2779,34 +2779,21 @@ dumpDatabase(Archive *fout)
    /*
     * Fetch the database-level properties for this database.
     */
+   appendPQExpBuffer(dbQry, "SELECT tableoid, oid, datname, "
+                     "datdba, "
+                     "pg_encoding_to_char(encoding) AS encoding, "
+                     "datcollate, datctype, datfrozenxid, "
+                     "datacl, acldefault('d', datdba) AS acldefault, "
+                     "datistemplate, datconnlimit, ");
    if (fout->remoteVersion >= 90300)
-   {
-       appendPQExpBuffer(dbQry, "SELECT tableoid, oid, datname, "
-                         "datdba, "
-                         "pg_encoding_to_char(encoding) AS encoding, "
-                         "datcollate, datctype, datfrozenxid, datminmxid, "
-                         "datacl, acldefault('d', datdba) AS acldefault, "
-                         "datistemplate, datconnlimit, "
-                         "(SELECT spcname FROM pg_tablespace t WHERE t.oid = dattablespace) AS tablespace, "
-                         "shobj_description(oid, 'pg_database') AS description "
-
-                         "FROM pg_database "
-                         "WHERE datname = current_database()");
-   }
+       appendPQExpBuffer(dbQry, "datminmxid, ");
    else
-   {
-       appendPQExpBuffer(dbQry, "SELECT tableoid, oid, datname, "
-                         "datdba, "
-                         "pg_encoding_to_char(encoding) AS encoding, "
-                         "datcollate, datctype, datfrozenxid, 0 AS datminmxid, "
-                         "datacl, acldefault('d', datdba) AS acldefault, "
-                         "datistemplate, datconnlimit, "
-                         "(SELECT spcname FROM pg_tablespace t WHERE t.oid = dattablespace) AS tablespace, "
-                         "shobj_description(oid, 'pg_database') AS description "
-
-                         "FROM pg_database "
-                         "WHERE datname = current_database()");
-   }
+       appendPQExpBuffer(dbQry, "0 AS datminmxid, ");
+   appendPQExpBuffer(dbQry,
+                     "(SELECT spcname FROM pg_tablespace t WHERE t.oid = dattablespace) AS tablespace, "
+                     "shobj_description(oid, 'pg_database') AS description "
+                     "FROM pg_database "
+                     "WHERE datname = current_database()");
 
    res = ExecuteSqlQueryForSingleRow(fout, dbQry->data);