Fix pg_dump's errno checking for zlib I/O Some error reports were reporting strerror(errno), which for some error conditions coming from zlib are wrong, resulting in confusing reports such as pg_restore: [compress_io] could not read from input file: Success which makes no sense. To correctly extract the error message we need to use gzerror(), so let's do that.
This isn't as comprehensive or as neat as I would like, but at least it should improve things in many common cases. The zlib abstraction in compress_io does not seem to be applied consistently enough; we could perhaps improve that, but it seems master-only material, not a bug fix for back-patching. This problem goes back all the way, but I decided to apply back to 9.4 only, because older branches don't contain commit 14ea89366 which this change depends on. Authors: Vladimir Kunschikov, Álvaro Herrera Discussion: https://postgr.es/m/1498120508308.9...@infotecs.ru Branch ------ REL9_4_STABLE Details ------- https://git.postgresql.org/pg/commitdiff/330e68734b822416b5ef94da64f9b6b92f46c083 Modified Files -------------- src/bin/pg_dump/compress_io.c | 24 +++++++++++++++++++++++- src/bin/pg_dump/compress_io.h | 1 + src/bin/pg_dump/pg_backup_directory.c | 10 +++++++--- src/bin/pg_dump/pg_backup_tar.c | 8 +++++++- 4 files changed, 38 insertions(+), 5 deletions(-) -- Sent via pgsql-committers mailing list (pgsql-committers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-committers