[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[rdiff-backup-users] OS X carbonfile issues?
From: |
Kevin Horton |
Subject: |
[rdiff-backup-users] OS X carbonfile issues? |
Date: |
Mon, 7 May 2007 19:48:25 -0400 |
I'm running rdiff-backup 1.1.9 on OS X 10.4.9, installed via Fink.
Yesterday I got the following error:
Incrementing mirror file /Volumes/Maxtor_300/bu/iBook/Music/iTunes/
iTunes Music/k-os
Exception 'Path: /Volumes/Maxtor_300/bu/iBook/rdiff-backup-data/
increments/Music/iTunes/iTunes Music/k-os.2007-02-24T12:18:51-05:00.dir
Index: ('Music', 'iTunes', 'iTunes Music', 'k-os.
2007-02-24T12:18:51-05:00.dir')
Data: {'carbonfile': {'flags': 0, 'createDate': -1109749182, 'type':
'\x00\x00\x00\x00', 'location': (0, 0), 'creator': '\x00\x00\x00
\x00'}, 'uid': 508, 'perms': 493, 'type': 'reg', 'gname': 'unknown',
'ctime': 1178479633, 'devloc': 234881036L, 'uname': 'admin', 'nlink':
1, 'gid': 99, 'mtime': 1102373314, 'resourcefork': '', 'atime':
1178479633, 'inode': 8196365L, 'size': 0L}' raised of class '<type
'exceptions.AssertionError'>':
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
298, in error_check_Main
try: Main(arglist)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
318, in Main
take_action(rps)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
274, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
337, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 51, in Mirror_and_increment
DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 229, in patch_and_increment
ITR(diff.index, diff)
File "/sw/lib/python2.5/site-packages/rdiff_backup/rorpiter.py",
line 284, in __call__
branch.start_process(*args)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 699, in start_process
inc_prefix)
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 41, in Increment
elif mirror.isdir(): incrp = makedir(mirror, incpref)
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 94, in makedir
dirsign = get_inc(incpref, "dir")
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 114, in get_inc
assert not incrp.lstat(), incrp
Traceback (most recent call last):
File "/sw/bin/rdiff-backup", line 23, in <module>
rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
298, in error_check_Main
try: Main(arglist)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
318, in Main
take_action(rps)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
274, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
337, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 51, in Mirror_and_increment
DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 229, in patch_and_increment
ITR(diff.index, diff)
File "/sw/lib/python2.5/site-packages/rdiff_backup/rorpiter.py",
line 284, in __call__
branch.start_process(*args)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 699, in start_process
inc_prefix)
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 41, in Increment
elif mirror.isdir(): incrp = makedir(mirror, incpref)
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 94, in makedir
dirsign = get_inc(incpref, "dir")
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 114, in get_inc
assert not incrp.lstat(), incrp
AssertionError: Path: /Volumes/Maxtor_300/bu/iBook/rdiff-backup-data/
increments/Music/iTunes/iTunes Music/k-os.2007-02-24T12:18:51-05:00.dir
Index: ('Music', 'iTunes', 'iTunes Music', 'k-os.
2007-02-24T12:18:51-05:00.dir')
Data: {'carbonfile': {'flags': 0, 'createDate': -1109749182, 'type':
'\x00\x00\x00\x00', 'location': (0, 0), 'creator': '\x00\x00\x00
\x00'}, 'uid': 508, 'perms': 493, 'type': 'reg', 'gname': 'unknown',
'ctime': 1178479633, 'devloc': 234881036L, 'uname': 'admin', 'nlink':
1, 'gid': 99, 'mtime': 1102373314, 'resourcefork': '', 'atime':
1178479633, 'inode': 8196365L, 'size': 0L}
==========================================
I used Disk Utility to check the hard drives of the source,
destination and my OS. No errors. I had just previously done a
successful backup from the same source to a different destination.
When I started the backup that eventually failed, rdiff-backup
complained that:
"Fatal Error: It appears that a previous rdiff-backup session with
process
id 8717 is still running. If two different rdiff-backup processes write
the same repository simultaneously, data corruption will probably
result. To proceed with regress anyway, rerun rdiff-backup with the
--force option.
"
I used the --force option, and sometime later the backup attempt
failed. I restarted the main computer (where the backup destination
is, and where python is running, and tried again. I got a very
similar failure:
==========================================
Processing changed file Music/iTunes/iTunes Music/k-os
Incrementing mirror file /Volumes/Maxtor_300/bu/iBook/Music/iTunes/
iTunes Music/k-os
Exception 'Path: /Volumes/Maxtor_300/bu/iBook/rdiff-backup-data/
increments/Music/iTunes/iTunes Music/k-os.2007-02-24T12:18:51-05:00.dir
Index: ('Music', 'iTunes', 'iTunes Music', 'k-os.
2007-02-24T12:18:51-05:00.dir')
Data: {'carbonfile': {'flags': 0, 'createDate': -1109749182, 'type':
'\x00\x00\x00\x00', 'location': (0, 0), 'creator': '\x00\x00\x00
\x00'}, 'uid': 508, 'perms': 493, 'type': 'reg', 'gname': 'unknown',
'ctime': 1178498647, 'devloc': 234881030L, 'uname': 'admin', 'nlink':
1, 'gid': 99, 'mtime': 1102373314, 'resourcefork': '', 'atime':
1178498647, 'inode': 8247580L, 'size': 0L}' raised of class '<type
'exceptions.AssertionError'>':
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
298, in error_check_Main
try: Main(arglist)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
318, in Main
take_action(rps)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
274, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
337, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 51, in Mirror_and_increment
DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 229, in patch_and_increment
ITR(diff.index, diff)
File "/sw/lib/python2.5/site-packages/rdiff_backup/rorpiter.py",
line 284, in __call__
branch.start_process(*args)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 699, in start_process
inc_prefix)
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 41, in Increment
elif mirror.isdir(): incrp = makedir(mirror, incpref)
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 94, in makedir
dirsign = get_inc(incpref, "dir")
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 114, in get_inc
assert not incrp.lstat(), incrp
Traceback (most recent call last):
File "/sw/bin/rdiff-backup", line 23, in <module>
rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
298, in error_check_Main
try: Main(arglist)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
318, in Main
take_action(rps)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
274, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
337, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 51, in Mirror_and_increment
DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 229, in patch_and_increment
ITR(diff.index, diff)
File "/sw/lib/python2.5/site-packages/rdiff_backup/rorpiter.py",
line 284, in __call__
branch.start_process(*args)
File "/sw/lib/python2.5/site-packages/rdiff_backup/backup.py",
line 699, in start_process
inc_prefix)
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 41, in Increment
elif mirror.isdir(): incrp = makedir(mirror, incpref)
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 94, in makedir
dirsign = get_inc(incpref, "dir")
File "/sw/lib/python2.5/site-packages/rdiff_backup/increment.py",
line 114, in get_inc
assert not incrp.lstat(), incrp
AssertionError: Path: /Volumes/Maxtor_300/bu/iBook/rdiff-backup-data/
increments/Music/iTunes/iTunes Music/k-os.2007-02-24T12:18:51-05:00.dir
Index: ('Music', 'iTunes', 'iTunes Music', 'k-os.
2007-02-24T12:18:51-05:00.dir')
Data: {'carbonfile': {'flags': 0, 'createDate': -1109749182, 'type':
'\x00\x00\x00\x00', 'location': (0, 0), 'creator': '\x00\x00\x00
\x00'}, 'uid': 508, 'perms': 493, 'type': 'reg', 'gname': 'unknown',
'ctime': 1178498647, 'devloc': 234881030L, 'uname': 'admin', 'nlink':
1, 'gid': 99, 'mtime': 1102373314, 'resourcefork': '', 'atime':
1178498647, 'inode': 8247580L, 'size': 0L}
==========================================
It seems that I have some sort of problem with this backup
repository. I did a --check-destination-dir, and a --verify on the
backup destination, with no failures noted. I don't see any other
useful commands in the man page. Is there a way to reliably fix this
repository, or should I just delete it and start with a new one?
I then tried to do a backup from another destination, to yet another
repository. It seems that the last attempt to do this particular
backup had failed, so rdiff-backup complained about another process
possibly running, and suggested the --force option. I checked to
make sure that no python processes were running, and then started
again with --force. The regress attempt failed like:
Regressing attributes of /Volumes/Ext_BU/PowerMac/kwh/Music/iTunes/
Album Artwork/Local/0341BE8E58F8567B/05/12
Regressing file Music/iTunes/Album Artwork/Local/0341BE8E58F8567B/
05/13/06/0341BE8E58F8567B-B4C55380322E46D5.itc
Exception '[Errno 5] Input/output error: '/Volumes/Ext_BU/PowerMac/
kwh/Music/iTunes/Album Artwork/Local/0341BE8E58F8567B/05/13/06/rdiff-
backup.tmp.171067'' raised of class '<type 'exceptions.IOError'>':
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
298, in error_check_Main
try: Main(arglist)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
318, in Main
take_action(rps)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
274, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
331, in Backup
backup_final_init(rpout)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
431, in backup_final_init
checkdest_if_necessary(rpout)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
830, in checkdest_if_necessary
dest_rp.conn.regress.Regress(dest_rp)
File "/sw/lib/python2.5/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 "/sw/lib/python2.5/site-packages/rdiff_backup/rorpiter.py",
line 281, in __call__
last_branch.fast_process(*args)
File "/sw/lib/python2.5/site-packages/rdiff_backup/regress.py",
line 267, in fast_process
if rf.metadata_rorp.isreg(): self.restore_orig_regfile(rf)
File "/sw/lib/python2.5/site-packages/rdiff_backup/regress.py",
line 289, in restore_orig_regfile
tf.write_from_fileobj(rf.get_restore_fp())
File "/sw/lib/python2.5/site-packages/rdiff_backup/rpath.py", line
1052, in write_from_fileobj
outfp = self.open("wb", compress = compress)
File "/sw/lib/python2.5/site-packages/rdiff_backup/rpath.py", line
1032, in open
else: return open(self.path, mode)
Traceback (most recent call last):
File "/sw/bin/rdiff-backup", line 23, in <module>
rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
298, in error_check_Main
try: Main(arglist)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
318, in Main
take_action(rps)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
274, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
331, in Backup
backup_final_init(rpout)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
431, in backup_final_init
checkdest_if_necessary(rpout)
File "/sw/lib/python2.5/site-packages/rdiff_backup/Main.py", line
830, in checkdest_if_necessary
dest_rp.conn.regress.Regress(dest_rp)
File "/sw/lib/python2.5/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 "/sw/lib/python2.5/site-packages/rdiff_backup/rorpiter.py",
line 281, in __call__
last_branch.fast_process(*args)
File "/sw/lib/python2.5/site-packages/rdiff_backup/regress.py",
line 267, in fast_process
if rf.metadata_rorp.isreg(): self.restore_orig_regfile(rf)
File "/sw/lib/python2.5/site-packages/rdiff_backup/regress.py",
line 289, in restore_orig_regfile
tf.write_from_fileobj(rf.get_restore_fp())
File "/sw/lib/python2.5/site-packages/rdiff_backup/rpath.py", line
1052, in write_from_fileobj
outfp = self.open("wb", compress = compress)
File "/sw/lib/python2.5/site-packages/rdiff_backup/rpath.py", line
1032, in open
else: return open(self.path, mode)
IOError: [Errno 5] Input/output error: '/Volumes/Ext_BU/PowerMac/kwh/
Music/iTunes/Album Artwork/Local/0341BE8E58F8567B/05/13/06/rdiff-
backup.tmp.171067'
==========================================
The common thread to all these failures seems to be carbonfile
issues. I've been using --carbonfile for many months, with no
problems until now. These failures are roughly coincidental with an
update from OS X 10.4.8 to 10.4.9, and a recent security update.
Maybe rdiff-backup is no longer compatible with carbonfile. Or,
maybe something has gone strange with my python, or my rdiff-backup.
I rebuilt python2.5 before the last failure, yet that didn't help.
Comments?
Kevin Horton
Ottawa, Canada
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [rdiff-backup-users] OS X carbonfile issues?,
Kevin Horton <=