On Sat, Sep 26, 2009 at 6:48 PM, David Fetter <da...@fetter.org> wrote: > On Sat, Sep 26, 2009 at 11:02:55PM +0300, Peter Eisentraut wrote: >> On Fri, 2009-09-25 at 16:59 -0400, Tom Lane wrote: >> > "shakahsha...@gmail.com" <shakahsha...@gmail.com> writes: >> > > From pg_dump/pg_restore section (9.2 of the Todo page on the >> > > PostgreSQL Wiki), is the following item "Add comments to output >> > > indicating version of pg_dump and of the database server" simply >> > > asking for a change to the pg_dump header from: >> > >> > I think so, but what's not clear is whether this is a good idea to >> > do in the default output. It might only be appropriate in >> > "verbose" mode, so as not to introduce unnecessary diffs between >> > logically identical dumps. >> >> Well, a diff of the same database made by different (major) versions >> of pg_dump will already be different in most situations, so adding >> the pg_dump version number in it is essentially free from this >> perspective. >> >> What is the use case for adding the server version? > > There have been cases where pg_restore doesn't fix infelicities. For > example, there was a time when it was a good idea to run adddepend > after the reload. Knowing what server version the dump came from > could be handy for this kind of case. > >> I can imagine something like wanting to know exactly where the dump >> came from, but then host name and such would be better. (And then >> you can infer the server version from that.) > > You can infer the server version until the next upgrade, at which > point the information is lost. > > Cheers, > David.
Attached s/b a patch for the 8.5 TODO "Add comments to output indicating version of pg_dump and of the database server" (pg_dump/pg_restore section, 9.2). In verbose mode, pg_dump version and remote database version now appear in the "plain" output format. For example, original verbose output: -- -- PostgreSQL database dump -- -- Started on 2009-09-27 11:05:52 UTC SET statement_timeout = 0; [...etc...] New verbose output: -- -- PostgreSQL database dump -- -- -- pg_dump version: 8.5devel -- -- remote database version: 8.1.3 (80103) -- -- Started on 2009-09-27 11:05:52 UTC SET statement_timeout = 0; [...etc...]
Index: src/bin/pg_dump/pg_backup_archiver.c =================================================================== RCS file: /projects/cvsroot/pgsql/src/bin/pg_dump/pg_backup_archiver.c,v retrieving revision 1.175 diff -c -r1.175 pg_backup_archiver.c *** src/bin/pg_dump/pg_backup_archiver.c 7 Aug 2009 22:48:34 -0000 1.175 --- src/bin/pg_dump/pg_backup_archiver.c 27 Sep 2009 11:26:37 -0000 *************** *** 301,306 **** --- 301,315 ---- ahprintf(AH, "--\n-- PostgreSQL database dump\n--\n\n"); if (AH->public.verbose) + { + ahprintf(AH, "--\n-- pg_dump version: %s\n", PG_VERSION); + ahprintf(AH, "--\n-- remote database version: %s (%d)\n" + ,AHX->remoteVersionStr + ,AHX->remoteVersion) ; + ahprintf(AH, "--\n\n"); + } + + if (AH->public.verbose) dumpTimestamp(AH, "Started on", AH->createDate); if (ropt->single_txn)
-- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers