Lists: | pgsql-bugs |
---|
From: | "Shigehiro honda" <fwif0083(at)mb(dot)infoweb(dot)ne(dot)jp> |
---|---|
To: | pgsql-bugs(at)postgresql(dot)org |
Subject: | BUG #6060: does not work -z option of pg_basebackup |
Date: | 2011-06-15 12:47:07 |
Message-ID: | 201106151247.p5FCl70O029002@wwwmaster.postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-bugs |
The following bug has been logged online:
Bug reference: 6060
Logged by: Shigehiro honda
Email address: fwif0083(at)mb(dot)infoweb(dot)ne(dot)jp
PostgreSQL version: 9.1 beta2
Operating system: Linux
Description: does not work -z option of pg_basebackup
Details:
it seems that the -z option of pg_basebackup does not work correctly.
In getopt_long() function, there is not 'z' in 3rd argument.
And Z_DEFAULT_COMPRESSION are defined as (-1) in my zlib.h and it does only
test (compresslevel > 0) in the code, so the command does not compress
anyway.
$ diff pg_basebackup.c.DIST pg_basebackup.c
267c267
< if (compresslevel > 0)
---
> if (compresslevel > 0 || compresslevel == Z_DEFAULT_COMPRESSION )
284c284
< if (compresslevel > 0)
---
> if (compresslevel > 0 || compresslevel == Z_DEFAULT_COMPRESSION)
308c308
< if (compresslevel > 0)
---
> if (compresslevel > 0 || compresslevel == Z_DEFAULT_COMPRESSION)
328c328
< if (compresslevel > 0)
---
> if (compresslevel > 0 || compresslevel == Z_DEFAULT_COMPRESSION)
979c979
< while ((c = getopt_long(argc, argv, "D:F:l:Z:c:h:p:U:xwWvP",
---
> while ((c = getopt_long(argc, argv, "D:F:l:Z:c:h:p:U:zxwWvP",
1092c1092
< if (format == 'p' && compresslevel > 0)
---
> if (format == 'p' && ( compresslevel > 0|| compresslevel ==
Z_DEFAULT_COMPRESSION ))
regards,
From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | "Shigehiro honda" <fwif0083(at)mb(dot)infoweb(dot)ne(dot)jp> |
Cc: | pgsql-bugs(at)postgresql(dot)org |
Subject: | Re: BUG #6060: does not work -z option of pg_basebackup |
Date: | 2011-06-15 16:21:59 |
Message-ID: | 450.1308154919@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Lists: | pgsql-bugs |
"Shigehiro honda" <fwif0083(at)mb(dot)infoweb(dot)ne(dot)jp> writes:
> it seems that the -z option of pg_basebackup does not work correctly.
> In getopt_long() function, there is not 'z' in 3rd argument.
Ooops. Doesn't look like this got tested much (or at all).
> And Z_DEFAULT_COMPRESSION are defined as (-1) in my zlib.h and it does only
> test (compresslevel > 0) in the code, so the command does not compress
> anyway.
I think it would be sufficient to test (compresslevel != 0) in all these
places, instead of hard-wiring knowledge of Z_DEFAULT_COMPRESSION.
Will fix, thanks for the report!
> $ diff pg_basebackup.c.DIST pg_basebackup.c
BTW, plain diffs are just about useless, since patch can't apply them
safely if the code has changed at all. Please send -c or -u format
diffs in future.
regards, tom lane