#781496 gzip: --rsyncable option works poorly on wheezy

Package:
gzip
Source:
gzip
Description:
GNU compression utilities
Submitter:
mc0e
Date:
2015-03-30 03:33:06 UTC
Severity:
normal
#781496#5
Date:
2015-03-30 03:19:56 UTC
From:
To:
Dear Maintainer,

I have a backup system that performed well when running on squeeze using
rdiff-backup, but on wheezy the daily diffs of gzipped mysqldump files are
commonly almost as large as the original dump files.

On inspection, it seems that gzip's --rsyncable option on wheezy is of benefit,
but quite variable nothing near what is achieved when running on squeeze or
on jessie.

I've been testing this using docker with a Dockerfile as follows, which
makes it relatively easy to compare performance on different OS versions.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
FROM debian:wheezy
RUN apt-get update && apt-get install -y --no-install-recommends \
  rdiff-backup
RUN apt-get install -y --no-install-recommends wget


RUN mkdir -p /tmp/testdir/src /tmp/testdir/dst
WORKDIR /tmp/testdir

RUN wget http://ftp.de.debian.org/debian/pool/main/l/linux/linux_3.18.5.orig.tar.xz
RUN unxz linux_3.18.5.orig.tar.xz

RUN (                   cat linux_3.18.5.orig.tar)  | gzip             > src/standard.gz
RUN (                   cat linux_3.18.5.orig.tar)  | gzip --rsyncable > src/rsyncable.gz
RUN rdiff-backup -b src dst

RUN rm src/*

RUN (echo "difference"; cat linux_3.18.5.orig.tar) | gzip             > src/standard.gz
RUN (echo "difference"; cat linux_3.18.5.orig.tar) | gzip --rsyncable > src/rsyncable.gz
RUN rdiff-backup -b src dst

RUN ls -l dst/rdiff-backup-data/increments
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

The diffs for wheezy are usually, but seemingly not always many orders of
magnitude larger than for other versions.  It's content dependent.

I had a go at making a backport myself based on sources from jessie (and
sid), and the configure stage fails to find a macro which is defined
within the downloaded source.  My knowledge of autoconf is both basic
and rusty.

Could someone help by providing a backport please?