Re: [DOCS] suggestion for improving TMPDIR and "--format" docs for pg_dump - Mailing list pgsql-patches
From | Bruce Momjian |
---|---|
Subject | Re: [DOCS] suggestion for improving TMPDIR and "--format" docs for pg_dump |
Date | |
Msg-id | 200703221943.l2MJhOj17367@momjian.us Whole thread Raw |
Responses |
Re: Re: [DOCS] suggestion for improving TMPDIR and "--format" docs for pg_dump
Re: Re: [DOCS] suggestion for improving TMPDIR and "--format" docs for pg_dump |
List | pgsql-patches |
Mark Stosberg wrote: > Bruce Momjian wrote: > > Mark Stosberg wrote: > >> It woud also be nice to document that the full names "custom" and "tar" are > >> supported. Longer names can be nice for clarity. > >> > >> ( Unfortunately, wrong formats like "txx" also work instead of throwing > >> an error. ) > > > > I don't see that with current CVS: > > > > $ pg_dump --format=x test > > pg_dump: invalid output format "x" specified > > Bruce, > > I think the specific test case would have to start with a valid letter, > like "t", and then include invalid characters. Try this instead: > > pg_dump --format=tx test Thanks for the report. I have corrected this and the fix will be in PostgreSQL 8.3. Interestingly, we support non-documented option "append" and "file" too. Patch attached and applied. -- Bruce Momjian <bruce@momjian.us> http://momjian.us EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + Index: src/bin/pg_dump/pg_dump.c =================================================================== RCS file: /cvsroot/pgsql/src/bin/pg_dump/pg_dump.c,v retrieving revision 1.461 diff -c -c -r1.461 pg_dump.c *** src/bin/pg_dump/pg_dump.c 19 Mar 2007 23:38:30 -0000 1.461 --- src/bin/pg_dump/pg_dump.c 22 Mar 2007 18:39:53 -0000 *************** *** 476,513 **** } /* open the output file */ ! switch (format[0]) { ! case 'a': ! case 'A': ! plainText = 1; ! g_fout = CreateArchive(filename, archNull, 0, archModeAppend); ! break; ! ! case 'c': ! case 'C': ! g_fout = CreateArchive(filename, archCustom, compressLevel, archModeWrite); ! break; ! ! case 'f': ! case 'F': ! g_fout = CreateArchive(filename, archFiles, compressLevel, archModeWrite); ! break; ! ! case 'p': ! case 'P': ! plainText = 1; ! g_fout = CreateArchive(filename, archNull, 0, archModeWrite); ! break; ! ! case 't': ! case 'T': ! g_fout = CreateArchive(filename, archTar, compressLevel, archModeWrite); ! break; ! ! default: ! write_msg(NULL, "invalid output format \"%s\" specified\n", format); ! exit(1); } if (g_fout == NULL) --- 476,508 ---- } /* open the output file */ ! if (strcasecmp(format, "a") == 0 || strcasecmp(format, "append") == 0) { ! /* not documented */ ! plainText = 1; ! g_fout = CreateArchive(filename, archNull, 0, archModeAppend); ! } ! else if (strcasecmp(format, "c") == 0 || strcasecmp(format, "custom") == 0) ! g_fout = CreateArchive(filename, archCustom, compressLevel, archModeWrite); ! else if (strcasecmp(format, "f") == 0 || strcasecmp(format, "file") == 0) ! { ! /* ! * Dump files into the current directory; for demonstration only, not ! * documented. ! */ ! g_fout = CreateArchive(filename, archFiles, compressLevel, archModeWrite); ! } ! else if (strcasecmp(format, "p") == 0 || strcasecmp(format, "plain") == 0) ! { ! plainText = 1; ! g_fout = CreateArchive(filename, archNull, 0, archModeWrite); ! } ! else if (strcasecmp(format, "t") == 0 || strcasecmp(format, "tar") == 0) ! g_fout = CreateArchive(filename, archTar, compressLevel, archModeWrite); ! else ! { ! write_msg(NULL, "invalid output format \"%s\" specified\n", format); ! exit(1); } if (g_fout == NULL)
pgsql-patches by date: