Package: rsync
Version: 3.1.2-2
Severity: important
Tags: upstream

If the destination of an rsync transfer is not writeable or runs out of free
space, the transfer does not abort. Instead, even the next file is
happily processed and errors are delayed until the very end:

  % sudo lvcreate -L 512M -n rsynctest albatross_hdd
    Logical volume "rsynctest" created.

  % sudo mkfs.ext4 /dev/albatross_hdd/rsynctest
    […]

  % sudo mount /dev/albatross_hdd/rsynctest /mnt

  % cd /tmp; mkdir rsynctest; cd rsynctest

  % dd if=/dev/urandom of=one bs=1M count=1024
  1024+0 records in
  1024+0 records out
  1073741824 bytes (1,1 GB, 1,0 GiB) copied, 4,48301 s, 240 MB/s

  % ln one two

  % rsync -Pvr /tmp/rsynctest/ /mnt
  sending incremental file list
  one
    1,073,741,824 100%  398.74MB/s    0:00:02 (xfr#1, to-chk=1/3)
  two
    1,073,741,824 100%  333.88MB/s    0:00:03 (xfr#2, to-chk=0/3)
  rsync: mkstemp "/mnt/.one.REoYOa" failed: Permission denied (13)
  rsync: mkstemp "/mnt/.two.t6Pwx8" failed: Permission denied (13)

  sent 2,148,008,118 bytes  received 257 bytes  390,546,977.27 bytes/sec
  total size is 2,147,483,648  speedup is 1.00
  rsync error: some files/attrs were not transferred (see previous errors) 
(code 23) at main.c(1196) [sender=3.1.2]

There, 2G of data transferred pointlessly. Or this:

  % rsync -Pvr /tmp/rsynctest/ /mnt
  sending incremental file list
  one
    1,073,741,824 100%  251.77MB/s    0:00:04 (xfr#1, to-chk=1/3)
  two
    1,073,741,824 100%  328.21MB/s    0:00:03 (xfr#2, to-chk=0/3)
  rsync: write failed on "/mnt/one": No space left on device (28)
  rsync error: error in file IO (code 11) at receiver.c(393) [receiver=3.1.2]

And here, 1G of data transferred pointlessly.

This hasn't exactly caused data loss, but certainly a lot of time
was wasted.

-- System Information:
Debian Release: buster/sid
  APT prefers unstable
  APT policy: (500, 'unstable'), (1, 'experimental')
Architecture: amd64 (x86_64)

Kernel: Linux 4.12.0-2-amd64 (SMP w/8 CPU cores)
Locale: LANG=en_NZ, LC_CTYPE=en_NZ.UTF-8 (charmap=UTF-8), LANGUAGE=en_NZ:en 
(charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages rsync depends on:
ii  base-files           10
ii  init-system-helpers  1.49
ii  libacl1              2.2.52-3+b1
ii  libattr1             1:2.4.47-2+b2
ii  libc6                2.24-17
ii  libpopt0             1.16-10+b2
ii  lsb-base             9.20170808

rsync recommends no packages.

Versions of packages rsync suggests:
ii  openssh-client  1:7.5p1-10
ii  openssh-server  1:7.5p1-10

-- debconf-show failed


-- 
 .''`.   martin f. krafft <madduck@d.o> @martinkrafft
: :'  :  proud Debian developer
`. `'`   http://people.debian.org/~madduck
  `-  Debian - when you have better things to do than fixing systems

Attachment: digital_signature_gpg.asc
Description: Digital GPG signature (see http://martin-krafft.net/gpg/sig-policy/999bbcc4/current)

Reply via email to