Thread: pg_dump -i wording
Simon Riggs wrote: > On Thu, 2008-01-31 at 11:20 -0300, Alvaro Herrera wrote: > > > Tom Lane wrote: > > > > > > in fact, personally I'd like to make that case be a hard error, > > > > rather than something people could override with -i. > > > > +1 to this idea. TODO for 8.4? > > -1 without some more planning about the effects and implications. I have developed the attached patch with improves wording for the pg_dump -i (ignore version) option. The previous wording just said "proceed" which was very neutral. The new wording says "skip", which is more active and more likely for people to understand it isn't something to do lightly. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://postgres.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + Index: doc/src/sgml/ref/pg_dump.sgml =================================================================== RCS file: /cvsroot/pgsql/doc/src/sgml/ref/pg_dump.sgml,v retrieving revision 1.98 diff -c -c -r1.98 pg_dump.sgml *** doc/src/sgml/ref/pg_dump.sgml 11 Dec 2007 19:57:32 -0000 1.98 --- doc/src/sgml/ref/pg_dump.sgml 23 Mar 2008 01:07:46 -0000 *************** *** 296,303 **** <term><option>--ignore-version</></term> <listitem> <para> ! Ignore version mismatch between ! <application>pg_dump</application> and the database server. </para> <para> --- 296,302 ---- <term><option>--ignore-version</></term> <listitem> <para> ! Skip server version checks </para> <para> Index: src/bin/pg_dump/pg_backup_db.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_db.c,v retrieving revision 1.77 diff -c -c -r1.77 pg_backup_db.c *** src/bin/pg_dump/pg_backup_db.c 9 Dec 2007 19:01:40 -0000 1.77 --- src/bin/pg_dump/pg_backup_db.c 23 Mar 2008 01:07:46 -0000 *************** *** 72,80 **** write_msg(NULL, "server version: %s; %s version: %s\n", remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! write_msg(NULL, "proceeding despite version mismatch\n"); else ! die_horribly(AH, NULL, "aborting because of version mismatch (Use the -i option to proceed anyway.)\n"); } } --- 72,80 ---- write_msg(NULL, "server version: %s; %s version: %s\n", remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! write_msg(NULL, "skipping server version checks\n"); else ! die_horribly(AH, NULL, "aborting because of version mismatch\nUse the -i option to skip server version checks.\n"); } } Index: src/bin/pg_dump/pg_dump.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v retrieving revision 1.482 diff -c -c -r1.482 pg_dump.c *** src/bin/pg_dump/pg_dump.c 30 Jan 2008 18:35:55 -0000 1.482 --- src/bin/pg_dump/pg_dump.c 23 Mar 2008 01:07:46 -0000 *************** *** 740,747 **** printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t|p output file format (custom, tar, plain text)\n")); ! printf(_(" -i, --ignore-version proceed even when server version mismatches\n" ! " pg_dump version\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" -Z, --compress=0-9 compression level for compressed formats\n")); printf(_(" --help show this help, then exit\n")); --- 740,746 ---- printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t|p output file format (custom, tar, plain text)\n")); ! printf(_(" -i, --ignore-version skip server version checks\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" -Z, --compress=0-9 compression level for compressed formats\n")); printf(_(" --help show this help, then exit\n")); Index: src/bin/pg_dump/pg_dumpall.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_dumpall.c,v retrieving revision 1.100 diff -c -c -r1.100 pg_dumpall.c *** src/bin/pg_dump/pg_dumpall.c 1 Jan 2008 19:45:55 -0000 1.100 --- src/bin/pg_dump/pg_dumpall.c 23 Mar 2008 01:07:46 -0000 *************** *** 482,489 **** printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); ! printf(_(" -i, --ignore-version proceed even when server version mismatches\n" ! " pg_dumpall version\n")); printf(_(" --help show this help, then exit\n")); printf(_(" --version output version information, then exit\n")); printf(_("\nOptions controlling the output content:\n")); --- 482,488 ---- printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); ! printf(_(" -i, --ignore-version skip server version checks\n")); printf(_(" --help show this help, then exit\n")); printf(_(" --version output version information, then exit\n")); printf(_("\nOptions controlling the output content:\n")); *************** *** 1392,1401 **** fprintf(stderr, _("server version: %s; %s version: %s\n"), remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! fprintf(stderr, _("proceeding despite version mismatch\n")); else { ! fprintf(stderr, _("aborting because of version mismatch (Use the -i option to proceed anyway.)\n")); exit(1); } } --- 1391,1400 ---- fprintf(stderr, _("server version: %s; %s version: %s\n"), remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! fprintf(stderr, _("skipping server version checks\n")); else { ! fprintf(stderr, _("aborting because of version mismatch\nUse the -i option to skip server version checks.\n")); exit(1); } } Index: src/bin/pg_dump/pg_restore.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_restore.c,v retrieving revision 1.85 diff -c -c -r1.85 pg_restore.c *** src/bin/pg_dump/pg_restore.c 11 Dec 2007 19:01:06 -0000 1.85 --- src/bin/pg_dump/pg_restore.c 23 Mar 2008 01:07:46 -0000 *************** *** 371,377 **** printf(_(" -d, --dbname=NAME connect to database name\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t specify backup file format\n")); ! printf(_(" -i, --ignore-version proceed even when server version mismatches\n")); printf(_(" -l, --list print summarized TOC of the archive\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" --help show this help, then exit\n")); --- 371,377 ---- printf(_(" -d, --dbname=NAME connect to database name\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t specify backup file format\n")); ! printf(_(" -i, --ignore-version skip server version checks\n")); printf(_(" -l, --list print summarized TOC of the archive\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" --help show this help, then exit\n"));
Bruce Momjian <bruce@momjian.us> writes: > I have developed the attached patch with improves wording for the > pg_dump -i (ignore version) option. I think this is going in exactly the wrong direction --- it makes both the documentation and the warning message less scary not more so. regards, tom lane
Tom Lane wrote: > Bruce Momjian <bruce@momjian.us> writes: > > I have developed the attached patch with improves wording for the > > pg_dump -i (ignore version) option. > > I think this is going in exactly the wrong direction --- it makes > both the documentation and the warning message less scary not more > so. OK, updated pg_dump -i wording, more scary. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://postgres.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + Index: doc/src/sgml/ref/pg_dump.sgml =================================================================== RCS file: /cvsroot/pgsql/doc/src/sgml/ref/pg_dump.sgml,v retrieving revision 1.99 diff -c -c -r1.99 pg_dump.sgml *** doc/src/sgml/ref/pg_dump.sgml 20 Mar 2008 17:36:57 -0000 1.99 --- doc/src/sgml/ref/pg_dump.sgml 25 Mar 2008 18:02:04 -0000 *************** *** 296,314 **** <term><option>--ignore-version</></term> <listitem> <para> ! Ignore version mismatch between <application>pg_dump</application> and the database server. </para> <para> - <application>pg_dump</application> can dump from servers running - previous releases of <productname>PostgreSQL</>, but very old - versions are not supported anymore (currently, those prior to 7.0). Dumping from a server newer than <application>pg_dump</application> ! is likely not to work at all. ! Use this option if you need to override the version check (and ! if <application>pg_dump</application> then fails, don't say ! you weren't warned). </para> </listitem> </varlistentry> --- 296,313 ---- <term><option>--ignore-version</></term> <listitem> <para> ! Ignore incompatible version check between <application>pg_dump</application> and the database server. </para> <para> Dumping from a server newer than <application>pg_dump</application> ! is likely fail and is disabled by default. ! Also, while <application>pg_dump</application> can dump from servers running ! previous releases of <productname>PostgreSQL</>, some very old ! versions are not supported (currently, pre-7.0). ! Use this option if you need to override the version check, but ! be prepared for <application>pg_dump</application> to fail. </para> </listitem> </varlistentry> Index: src/bin/pg_dump/pg_backup_db.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_db.c,v retrieving revision 1.77 diff -c -c -r1.77 pg_backup_db.c *** src/bin/pg_dump/pg_backup_db.c 9 Dec 2007 19:01:40 -0000 1.77 --- src/bin/pg_dump/pg_backup_db.c 25 Mar 2008 18:02:04 -0000 *************** *** 72,80 **** write_msg(NULL, "server version: %s; %s version: %s\n", remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! write_msg(NULL, "proceeding despite version mismatch\n"); else ! die_horribly(AH, NULL, "aborting because of version mismatch (Use the -i option to proceed anyway.)\n"); } } --- 72,81 ---- write_msg(NULL, "server version: %s; %s version: %s\n", remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! write_msg(NULL, "ignoring possible server version mismatch\n"); else ! die_horribly(AH, NULL, "aborting because of version mismatch\n" ! "Use the -i option to bypass server version check, but be prepared for failure.\n"); } } Index: src/bin/pg_dump/pg_dump.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v retrieving revision 1.483 diff -c -c -r1.483 pg_dump.c *** src/bin/pg_dump/pg_dump.c 20 Mar 2008 17:36:57 -0000 1.483 --- src/bin/pg_dump/pg_dump.c 25 Mar 2008 18:02:04 -0000 *************** *** 745,752 **** printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t|p output file format (custom, tar, plain text)\n")); ! printf(_(" -i, --ignore-version proceed even when server version mismatches\n" ! " pg_dump version\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" -Z, --compress=0-9 compression level for compressed formats\n")); printf(_(" --help show this help, then exit\n")); --- 745,751 ---- printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t|p output file format (custom, tar, plain text)\n")); ! printf(_(" -i, --ignore-version ignore server version mismatch\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" -Z, --compress=0-9 compression level for compressed formats\n")); printf(_(" --help show this help, then exit\n")); Index: src/bin/pg_dump/pg_dumpall.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_dumpall.c,v retrieving revision 1.102 diff -c -c -r1.102 pg_dumpall.c *** src/bin/pg_dump/pg_dumpall.c 20 Mar 2008 17:42:51 -0000 1.102 --- src/bin/pg_dump/pg_dumpall.c 25 Mar 2008 18:02:04 -0000 *************** *** 488,495 **** printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); ! printf(_(" -i, --ignore-version proceed even when server version mismatches\n" ! " pg_dumpall version\n")); printf(_(" --help show this help, then exit\n")); printf(_(" --version output version information, then exit\n")); printf(_("\nOptions controlling the output content:\n")); --- 488,494 ---- printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); ! printf(_(" -i, --ignore-version ignore server version mismatch\n")); printf(_(" --help show this help, then exit\n")); printf(_(" --version output version information, then exit\n")); printf(_("\nOptions controlling the output content:\n")); *************** *** 1399,1408 **** fprintf(stderr, _("server version: %s; %s version: %s\n"), remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! fprintf(stderr, _("proceeding despite version mismatch\n")); else { ! fprintf(stderr, _("aborting because of version mismatch (Use the -i option to proceed anyway.)\n")); exit(1); } } --- 1398,1408 ---- fprintf(stderr, _("server version: %s; %s version: %s\n"), remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! fprintf(stderr, _("ignoring possible server version mismatch\n")); else { ! fprintf(stderr, _("aborting because of version mismatch\n" ! "Use the -i option to bypass server version check, but be prepared for failure.\n")); exit(1); } } Index: src/bin/pg_dump/pg_restore.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_restore.c,v retrieving revision 1.86 diff -c -c -r1.86 pg_restore.c *** src/bin/pg_dump/pg_restore.c 20 Mar 2008 17:36:58 -0000 1.86 --- src/bin/pg_dump/pg_restore.c 25 Mar 2008 18:02:04 -0000 *************** *** 378,384 **** printf(_(" -d, --dbname=NAME connect to database name\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t specify backup file format\n")); ! printf(_(" -i, --ignore-version proceed even when server version mismatches\n")); printf(_(" -l, --list print summarized TOC of the archive\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" --help show this help, then exit\n")); --- 378,384 ---- printf(_(" -d, --dbname=NAME connect to database name\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t specify backup file format\n")); ! printf(_(" -i, --ignore-version ignore server version mismatch\n")); printf(_(" -l, --list print summarized TOC of the archive\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" --help show this help, then exit\n"));
Bruce Momjian wrote: > Tom Lane wrote: > > Bruce Momjian <bruce@momjian.us> writes: > > > I have developed the attached patch with improves wording for the > > > pg_dump -i (ignore version) option. > > > > I think this is going in exactly the wrong direction --- it makes > > both the documentation and the warning message less scary not more > > so. > > OK, updated pg_dump -i wording, more scary. Updated patch applied, with improved wording when the -i option is specified. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://postgres.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + Index: doc/src/sgml/ref/pg_dump.sgml =================================================================== RCS file: /cvsroot/pgsql/doc/src/sgml/ref/pg_dump.sgml,v retrieving revision 1.99 diff -c -c -r1.99 pg_dump.sgml *** doc/src/sgml/ref/pg_dump.sgml 20 Mar 2008 17:36:57 -0000 1.99 --- doc/src/sgml/ref/pg_dump.sgml 26 Mar 2008 14:26:54 -0000 *************** *** 296,314 **** <term><option>--ignore-version</></term> <listitem> <para> ! Ignore version mismatch between <application>pg_dump</application> and the database server. </para> <para> - <application>pg_dump</application> can dump from servers running - previous releases of <productname>PostgreSQL</>, but very old - versions are not supported anymore (currently, those prior to 7.0). Dumping from a server newer than <application>pg_dump</application> ! is likely not to work at all. ! Use this option if you need to override the version check (and ! if <application>pg_dump</application> then fails, don't say ! you weren't warned). </para> </listitem> </varlistentry> --- 296,313 ---- <term><option>--ignore-version</></term> <listitem> <para> ! Ignore incompatible version check between <application>pg_dump</application> and the database server. </para> <para> Dumping from a server newer than <application>pg_dump</application> ! is likely fail and is disabled by default. ! Also, while <application>pg_dump</application> can dump from servers running ! previous releases of <productname>PostgreSQL</>, some very old ! versions are not supported (currently, pre-7.0). ! Use this option if you need to override the version check, but ! be prepared for <application>pg_dump</application> to fail. </para> </listitem> </varlistentry> Index: src/bin/pg_dump/pg_backup_db.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_backup_db.c,v retrieving revision 1.77 diff -c -c -r1.77 pg_backup_db.c *** src/bin/pg_dump/pg_backup_db.c 9 Dec 2007 19:01:40 -0000 1.77 --- src/bin/pg_dump/pg_backup_db.c 26 Mar 2008 14:26:54 -0000 *************** *** 72,80 **** write_msg(NULL, "server version: %s; %s version: %s\n", remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! write_msg(NULL, "proceeding despite version mismatch\n"); else ! die_horribly(AH, NULL, "aborting because of version mismatch (Use the -i option to proceed anyway.)\n"); } } --- 72,81 ---- write_msg(NULL, "server version: %s; %s version: %s\n", remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! write_msg(NULL, "ignoring server version mismatch\n"); else ! die_horribly(AH, NULL, "aborting because of server version mismatch\n" ! "Use the -i option to bypass server version check, but be prepared for failure.\n"); } } Index: src/bin/pg_dump/pg_dump.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v retrieving revision 1.483 diff -c -c -r1.483 pg_dump.c *** src/bin/pg_dump/pg_dump.c 20 Mar 2008 17:36:57 -0000 1.483 --- src/bin/pg_dump/pg_dump.c 26 Mar 2008 14:26:54 -0000 *************** *** 745,752 **** printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t|p output file format (custom, tar, plain text)\n")); ! printf(_(" -i, --ignore-version proceed even when server version mismatches\n" ! " pg_dump version\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" -Z, --compress=0-9 compression level for compressed formats\n")); printf(_(" --help show this help, then exit\n")); --- 745,751 ---- printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t|p output file format (custom, tar, plain text)\n")); ! printf(_(" -i, --ignore-version ignore server version mismatch\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" -Z, --compress=0-9 compression level for compressed formats\n")); printf(_(" --help show this help, then exit\n")); Index: src/bin/pg_dump/pg_dumpall.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_dumpall.c,v retrieving revision 1.102 diff -c -c -r1.102 pg_dumpall.c *** src/bin/pg_dump/pg_dumpall.c 20 Mar 2008 17:42:51 -0000 1.102 --- src/bin/pg_dump/pg_dumpall.c 26 Mar 2008 14:26:54 -0000 *************** *** 488,495 **** printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); ! printf(_(" -i, --ignore-version proceed even when server version mismatches\n" ! " pg_dumpall version\n")); printf(_(" --help show this help, then exit\n")); printf(_(" --version output version information, then exit\n")); printf(_("\nOptions controlling the output content:\n")); --- 488,494 ---- printf(_("\nGeneral options:\n")); printf(_(" -f, --file=FILENAME output file name\n")); ! printf(_(" -i, --ignore-version ignore server version mismatch\n")); printf(_(" --help show this help, then exit\n")); printf(_(" --version output version information, then exit\n")); printf(_("\nOptions controlling the output content:\n")); *************** *** 1399,1408 **** fprintf(stderr, _("server version: %s; %s version: %s\n"), remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! fprintf(stderr, _("proceeding despite version mismatch\n")); else { ! fprintf(stderr, _("aborting because of version mismatch (Use the -i option to proceed anyway.)\n")); exit(1); } } --- 1398,1408 ---- fprintf(stderr, _("server version: %s; %s version: %s\n"), remoteversion_str, progname, PG_VERSION); if (ignoreVersion) ! fprintf(stderr, _("ignoring server version mismatch\n")); else { ! fprintf(stderr, _("aborting because of server version mismatch\n" ! "Use the -i option to bypass server version check, but be prepared for failure.\n")); exit(1); } } Index: src/bin/pg_dump/pg_restore.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_restore.c,v retrieving revision 1.86 diff -c -c -r1.86 pg_restore.c *** src/bin/pg_dump/pg_restore.c 20 Mar 2008 17:36:58 -0000 1.86 --- src/bin/pg_dump/pg_restore.c 26 Mar 2008 14:26:54 -0000 *************** *** 378,384 **** printf(_(" -d, --dbname=NAME connect to database name\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t specify backup file format\n")); ! printf(_(" -i, --ignore-version proceed even when server version mismatches\n")); printf(_(" -l, --list print summarized TOC of the archive\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" --help show this help, then exit\n")); --- 378,384 ---- printf(_(" -d, --dbname=NAME connect to database name\n")); printf(_(" -f, --file=FILENAME output file name\n")); printf(_(" -F, --format=c|t specify backup file format\n")); ! printf(_(" -i, --ignore-version ignore server version mismatch\n")); printf(_(" -l, --list print summarized TOC of the archive\n")); printf(_(" -v, --verbose verbose mode\n")); printf(_(" --help show this help, then exit\n"));