]> granicus.if.org Git - postgresql/commitdiff
Fix pg_basebackup so that it accepts 0 as a valid compression level.
authorFujii Masao <fujii@postgresql.org>
Mon, 1 Aug 2016 08:36:14 +0000 (17:36 +0900)
committerFujii Masao <fujii@postgresql.org>
Mon, 1 Aug 2016 08:38:05 +0000 (17:38 +0900)
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

doc/src/sgml/ref/pg_basebackup.sgml
src/bin/pg_basebackup/pg_basebackup.c

index 11b7c37c25cecc6a5973d49cfab61b7e9f3215e1..34d2f0bb6c4bdb24b974b2c62549495391f7f58f 100644 (file)
@@ -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>
index 817977a0702125ace5eb105a63432e2babfdff02..c78b7ec8853e4b16a427e6aab410d657c5fa6f83 100644 (file)
@@ -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);