Fix pg_basebackup so that it accepts 0 as a valid compression level.

The help message for pg_basebackup specifies that the numbers 0 through 9
are accepted as valid values of -Z option. But, previously -Z 0 was rejected
as an invalid compression level.

Per discussion, it's better to make pg_basebackup treat 0 as valid
compression level meaning no compression, like pg_dump.

Back-patch to all supported versions.

Reported-By: Jeff Janes
Reviewed-By: Amit Kapila
Discussion: CAMkU=1x+GwjSayc57v6w87ij6iRGFWt=hVfM0B64b1_bPVKRqg@mail.gmail.com
REL9_1_STABLE
Fujii Masao 10 years ago
parent 7004e1ccd4
commit 366f4a9624
  1. 2
      doc/src/sgml/ref/pg_basebackup.sgml
  2. 2
      src/bin/pg_basebackup/pg_basebackup.c

@ -185,7 +185,7 @@ PostgreSQL documentation
<listitem>
<para>
Enables gzip compression of tar file output, and specifies the
compression level (1 through 9, 9 being best
compression level (0 through 9, 0 being no compression and 9 being best
compression). Compression is only available when using the tar
format.
</para>

@ -1059,7 +1059,7 @@ main(int argc, char **argv)
break;
case 'Z':
compresslevel = atoi(optarg);
if (compresslevel <= 0 || compresslevel > 9)
if (compresslevel < 0 || compresslevel > 9)
{
fprintf(stderr, _("%s: invalid compression level \"%s\"\n"),
progname, optarg);

Loading…
Cancel
Save