Rdiff-backup has been failing with the following:
Previous backup seems to have failed, regressing destination now.
Traceback (most recent call last):
File "/usr/bin/rdiff-backup", line 23, in ?
rdiff_backup.Main.Main(sys.argv[1:])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line 254, in Main
take_action(rps)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line 234, in take_action
elif action == "remove-older-than": RemoveOlderThan(rps[0])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line 561, in RemoveOlderThan
rot_check_dir(rootrp)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line 593, in rot_check_dir
checkdest_if_necessary(rootrp)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line 672, in checkdest_if_necessary
dest_rp.conn.regress.Regress(dest_rp)
File "/usr/lib/python2.3/site-packages/rdiff_backup/regress.py", line 70, in Regress
for rf in iterate_meta_rfs(mirror_rp, inc_rpath): ITR(rf.index, rf)
File "/usr/lib/python2.3/site-packages/rdiff_backup/regress.py", line 159, in iterate_meta_rfs
raw_rfs = iterate_raw_rfs(mirror_rp, inc_rp)
File "/usr/lib/python2.3/site-packages/rdiff_backup/regress.py", line 129, in iterate_raw_rfs
root_rf = RegressFile(mirror_rp, inc_rp, restore.get_inclist(inc_rp))
File "/usr/lib/python2.3/site-packages/rdiff_backup/regress.py", line 181, in __init__
self.set_regress_inc()
File "/usr/lib/python2.3/site-packages/rdiff_backup/regress.py", line 196, in set_regress_inc
assert len(newer_incs) <= 1, "Too many recent increments"
AssertionError: Too many recent increments
It seems that a previous backup failed so rdiff-backup is trying to revert and is failing here:
def set_regress_inc(self): """Set self.regress_inc to increment to be removed (or None)""" newer_incs = self.get_newer_incs() assert len(newer_incs) <= 1, "Too many recent increments" if newer_incs: self.regress_inc = newer_incs[0] # first is mirror_rp else: self.regress_inc = None
Looks like I'll have to delete my old backups and start again, that or spend a few hours figuring out what has gone wrong. It may well be due to me messing up the system time a few weeks back.

