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
This commit is contained in:
Fujii Masao 2016-08-01 17:36:14 +09:00
parent 11653cd87f
commit 74d8c95b74
2 changed files with 2 additions and 2 deletions

View File

@ -364,7 +364,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>

View File

@ -2073,7 +2073,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);