Hi,
it happened again. Last night a backup of mine ran as usual, but it
triggered the following error:
------------------------------------------------------------------
UpdateError some/dir/some/file.xxx [Errno 5] Input/output error
Exception '[Errno 26] Text file busy:
'/mnt/backup/linux/backup_new/some/dir/some/rdiff-backup.tmp.9'' raised
of class 'exceptions.OSError':
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
304, in error_check_Main
try: Main(arglist)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
324, in Main
take_action(rps)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
280, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
343, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/usr/lib/python2.3/site-packages/rdiff_backup/backup.py", line
51, in Mirror_and_increment
DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/usr/lib/python2.3/site-packages/rdiff_backup/backup.py", line
243, in patch_and_increment
ITR(diff.index, diff)
File "/usr/lib/python2.3/site-packages/rdiff_backup/rorpiter.py", line
281, in __call__
last_branch.fast_process(*args)
File "/usr/lib/python2.3/site-packages/rdiff_backup/backup.py", line
710, in fast_process
if tf.lstat(): tf.delete()
File "/usr/lib/python2.3/site-packages/rdiff_backup/rpath.py", line
1072, in delete
try: self.conn.os.unlink(self.path)
Traceback (most recent call last):
File "/usr/bin/rdiff-backup", line 30, in ?
rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
304, in error_check_Main
try: Main(arglist)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
324, in Main
take_action(rps)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
280, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
343, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/usr/lib/python2.3/site-packages/rdiff_backup/backup.py", line
51, in Mirror_and_increment
DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/usr/lib/python2.3/site-packages/rdiff_backup/backup.py", line
243, in patch_and_increment
ITR(diff.index, diff)
File "/usr/lib/python2.3/site-packages/rdiff_backup/rorpiter.py", line
281, in __call__
last_branch.fast_process(*args)
File "/usr/lib/python2.3/site-packages/rdiff_backup/backup.py", line
710, in fast_process
if tf.lstat(): tf.delete()
File "/usr/lib/python2.3/site-packages/rdiff_backup/rpath.py", line
1072, in delete
try: self.conn.os.unlink(self.path)
OSError: [Errno 26] Text file busy:
'/mnt/backup/linux/backup_new/some/dir/some/rdiff-backup.tmp.9' raised
of class 'exceptions.OSError'
------------------------------------------------------------------
So I went to revert the failed backup, but:
------------------------------------------------------------------
# rdiff-backup --check linux/backup_new/
Warning: hard linking not supported by filesystem at
/mnt/backup/linux/backup_new/rdiff-backup-data
Exception 'Bad index order: ('long_filename_data', '1') >= ('ale',
'Desktop', 'some_other_dir', 'another_dir', 'some_file')' raised of
class 'exceptions.AssertionError':
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
304, in error_check_Main
try: Main(arglist)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
324, in Main
take_action(rps)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
282, in take_action
elif action == "check-destination-dir": CheckDest(rps[0])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
872, in CheckDest
dest_rp.conn.regress.Regress(dest_rp)
File "/usr/lib/python2.3/site-packages/rdiff_backup/regress.py", line
71, 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/rorpiter.py", line
275, in __call__
assert 0, "Bad index order: %s >= %s" % (self.index, index)
Traceback (most recent call last):
File "/usr/bin/rdiff-backup", line 30, in ?
rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
304, in error_check_Main
try: Main(arglist)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
324, in Main
take_action(rps)
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
282, in take_action
elif action == "check-destination-dir": CheckDest(rps[0])
File "/usr/lib/python2.3/site-packages/rdiff_backup/Main.py", line
872, in CheckDest
dest_rp.conn.regress.Regress(dest_rp)
File "/usr/lib/python2.3/site-packages/rdiff_backup/regress.py", line
71, 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/rorpiter.py", line
275, in __call__
assert 0, "Bad index order: %s >= %s" % (self.index, index)
AssertionError: Bad index order: ('long_filename_data', '1') >= ('ale',
'Desktop', 'some_other_dir', 'another_dir', 'some_file')
------------------------------------------------------------------
Any hints on how I can get back to a working state? I don't mind for
last night's backup data, I can safely lose that, but I want to keep the
backup history up to yesterday. Last time (see this thread:
http://lists.gnu.org/archive/html/rdiff-backup-users/2009-02/msg00115.html.
Please note that I upgraded to 1.2.8 since then.) I used the recovery
method suggested in the FAQ, but it totally corrupted my backup and I
had to start from scratch.
It it probably worth mentioning that the backup is done on a samba
share, so the "text file busy" error probably has something to do with
that and might happen from time to time.
Thanks,
Giorgio
_______________________________________________
rdiff-backup-users mailing list at [email protected]
http://lists.nongnu.org/mailman/listinfo/rdiff-backup-users
Wiki URL: http://rdiff-backup.solutionsfirst.com.au/index.php/RdiffBackupWiki