]> git.tuebingen.mpg.de Git - dss.git/commitdiff
Rework restart logic, introduce --max-errors.
authorAndre Noll <maan@tuebingen.mpg.de>
Fri, 12 Dec 2014 14:05:21 +0000 (15:05 +0100)
committerAndre Noll <maan@tuebingen.mpg.de>
Tue, 27 Jan 2015 09:47:54 +0000 (10:47 +0100)
It has happened several times in the past that dss made no progress
because the underlying rsync command terminates with exit code 13
(Errors with program diagnostics). Currently dss special cases this
exit code as a non-fatal error, i.e. it does not terminate but restarts
the rsync command after 60 seconds. If the problem is permanent,
no new snapshots will be created, but the exit hook is not called
either, which is unfortunate.

This commit tries to improve on this. With this patch applied, the
only non-fatal exit code from rsync is 24 (Partial transfer due
to vanished source files), which is actually considered success.
All other non-zero exit codes cause dss to restart the rsync command,
but only at most N times, where N is the argument given to the new
--max-rsync-errors option.


No differences found