Comment 20 for bug 1384503

Revision history for this message
Michael Foley (foli) wrote :

We have a few servers that are exhibiting this behaviour while copying backups sets. I cannot make any of that data available, but have tried producing some /dev/urandom produced data files that exhibit the error and have succeeded in getting something I hope is useful.

I discovered by accident while running a loop that generated and rsyncd test data that interrupting the transfer with ctrl-c produces a failing test case that works without compression but fails with compression.

I did not test rigorously, but the files do seem to need to be large, but zero filled seems to be okay. So the test data files I'm attaching are zero filled and only the beginning is random data.

Here is a recipe for producing the data
  # note: needs working ssh to localhost, does not error on a local rsync
  # setup for test
  cd ~/
  mkdir source dest
  # create a large file
  dd if=/dev/zero of=source/random-data-0 bs=1M count=1500
  # only need first part of file with random data
  dd if=/dev/urandom of=source/random-data-0 bs=1M count=50 conv=notrunc
  # copy it once successfully
  rsync -vv -ia --inplace --compress --checksum -P source/ localhost:dest/
  # change the first part of the file with new data
  dd if=/dev/urandom of=source/random-data-0 bs=1M count=50 conv=notrunc
  # copy it again, but break transfer within the first part of file
  # by typing ctrl-c key during this rsync
  rsync -vv -ia --inplace --compress --checksum -P source/ localhost:dest/
  # rsync again should will exhibit error near transfer break point
  rsync -vv -ia --inplace --compress --checksum -P source/ localhost:dest/