Received: from localhost (maia-1.hub.org [200.46.204.191]) by postgresql.org (Postfix) with ESMTP id A77799FB5CE for ; Thu, 22 Mar 2007 16:43:37 -0300 (ADT) Received: from postgresql.org ([200.46.204.71]) by localhost (mx1.hub.org [200.46.204.191]) (amavisd-new, port 10024) with ESMTP id 66863-06 for ; Thu, 22 Mar 2007 16:43:27 -0300 (ADT) X-Greylist: from auto-whitelisted by SQLgrey-1.7.4 Received: from momjian.us (momjian.us [70.90.9.53]) by postgresql.org (Postfix) with ESMTP id 2C5A39FB468 for ; Thu, 22 Mar 2007 16:43:27 -0300 (ADT) Received: (from bruce@localhost) by momjian.us (8.11.6/8.11.6) id l2MJhOj17367; Thu, 22 Mar 2007 15:43:24 -0400 (EDT) From: Bruce Momjian Message-Id: <200703221943.l2MJhOj17367@momjian.us> Subject: Re: [DOCS] suggestion for improving TMPDIR and "--format" docs for pg_dump In-Reply-To: <45FECCA8.8040204@summersault.com> To: Mark Stosberg Date: Thu, 22 Mar 2007 15:43:24 -0400 (EDT) CC: PostgreSQL-patches X-Mailer: ELM [version 2.4ME+ PL123] MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="ELM1174592604-9176-0_" Content-Transfer-Encoding: 7bit X-Virus-Scanned: Maia Mailguard 1.0.1 X-Archive-Number: 200703/301 X-Sequence-Number: 1311 --ELM1174592604-9176-0_ Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="US-ASCII" 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 http://momjian.us EnterpriseDB http://www.enterprisedb.com + If your life is a hard drive, Christ can be your backup. + --ELM1174592604-9176-0_ Content-Transfer-Encoding: 7bit Content-Type: text/x-diff Content-Disposition: inline; filename="/rtmp/diff" 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) --ELM1174592604-9176-0_--