bugrdiff-backup - Bugs: bug #21253, crash on Mac OS X case-insensitive...

 
 

bug #21253: crash on Mac OS X case-insensitive fs

Submitted by:  Jim Balhoff <balhoff>
Submitted on:  Thu 04 Oct 2007 02:08:41 PM UTC  
Votes:  100  
 
Category:  None Severity:  3 - Normal
Item Group:  None Status:  Confirmed
Privacy:  Public Assigned to:  None
Open/Closed:  Open

Add a New Comment(Rich Markup)
   

You are not logged in

Please log in, so followups can be emailed to you.

 

Mon 29 Feb 2016 03:11:34 PM UTC, comment #3:

I've managed to work around this by removing the folder in the source, performing a backup, then restoring it with the new capitalization and performing another backup.

However, the increments of both capitalizations are combined into the same folder, so I'm not 100% confident that this won't cause problems in the future.

Malcolm Smith <malcolm_smith>
Sat 30 Jan 2016 05:57:13 PM UTC, comment #2:

Also occurs on Cygwin / Windows, with identical symptoms.

Malcolm Smith <malcolm_smith>
Sun 23 Dec 2007 02:40:44 AM UTC, comment #1:

Yes, this is a known bug. I call it the "a.txt vs A.txt problem" in my notes. The bug arises if you change the capitalization of the file from lower case to upper case.

It's a tough bug to figure out how to fix correctly. Perhaps adding a warning message about it is in order.

Here's the mailing list post about it:
http://lists.nongnu.org/archive/html/rdiff-backup-users/2007-01/msg00028.html

Andrew Ferguson <owsla>
Project Administrator
Thu 04 Oct 2007 02:08:41 PM UTC, original submission:

rdiff-backup will crash when used with a Mac OS X case-insensitive file system, if a folder that has been previously backed up is moved to a new name that differs only by case. I am using rdiff-backup 1.1.14, Python 2.3.5, Mac OS X 10.4.10.

Here is a shell script which crashes on Mac OS X:

**********************************************************************
#!/bin/bash

mkdir BackupTesting
cd BackupTesting
mkdir -p BackMeUp/folder
mkdir Backups
rdiff-backup BackMeUp Backups/BackMeUp
mv BackMeUp/folder BackMeUp/Folder
rdiff-backup BackMeUp Backups/BackMeUp
**********************************************************************

Here is the result:

Exception 'Path: Backups/BackMeUp/rdiff-backup-data/increments/folder.2007-10-04T09:57:08-04:00.dir
Index: ('folder.2007-10-04T09:57:08-04:00.dir',)
Data: {'carbonfile': {'flags': 0, 'createDate': -1020616295, 'type': '\x00\x00\x00\x00', 'location': (0, 0), 'creator': '\x00\x00\x00\x00'}, 'uid': 501, 'perms': 493, 'type': 'reg', 'gname': 'balhoff', 'ctime': 1191506254, 'devloc': 234881040L, 'uname': 'balhoff', 'nlink': 1, 'gid': 501, 'mtime': 1191506201, 'atime': 1191506254, 'inode': 1901841L, 'size': 0L}' raised of class 'exceptions.AssertionError':
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/Main.py", line 302, in error_check_Main
try: Main(arglist)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/Main.py", line 322, in Main
take_action(rps)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/Main.py", line 278, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/Main.py", line 341, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/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 "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/backup.py", line 229, in patch_and_increment
ITR(diff.index, diff)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/rorpiter.py", line 284, in _call_
branch.start_process(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/backup.py", line 699, in start_process
inc_prefix)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/increment.py", line 41, in Increment
elif mirror.isdir(): incrp = makedir(mirror, incpref)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/increment.py", line 94, in makedir
dirsign = get_inc(incpref, "dir")
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/increment.py", line 114, in get_inc
assert not incrp.lstat(), incrp

Traceback (most recent call last):
File "/usr/bin/rdiff-backup", line 23, in ?
rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/Main.py", line 302, in error_check_Main
try: Main(arglist)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/Main.py", line 322, in Main
take_action(rps)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/Main.py", line 278, in take_action
elif action == "backup": Backup(rps[0], rps[1])
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/Main.py", line 341, in Backup
backup.Mirror_and_increment(rpin, rpout, incdir)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/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 "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/backup.py", line 229, in patch_and_increment
ITR(diff.index, diff)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/rorpiter.py", line 284, in _call_
branch.start_process(*args)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/backup.py", line 699, in start_process
inc_prefix)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/increment.py", line 41, in Increment
elif mirror.isdir(): incrp = makedir(mirror, incpref)
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/increment.py", line 94, in makedir
dirsign = get_inc(incpref, "dir")
File "/System/Library/Frameworks/Python.framework/Versions/2.3/lib/python2.3/site-packages/rdiff_backup/increment.py", line 114, in get_inc
assert not incrp.lstat(), incrp
AssertionError: Path: Backups/BackMeUp/rdiff-backup-data/increments/folder.2007-10-04T09:57:08-04:00.dir
Index: ('folder.2007-10-04T09:57:08-04:00.dir',)
Data: {'carbonfile': {'flags': 0, 'createDate': -1020616295, 'type': '\x00\x00\x00\x00', 'location': (0, 0), 'creator': '\x00\x00\x00\x00'}, 'uid': 501, 'perms': 493, 'type': 'reg', 'gname': 'balhoff', 'ctime': 1191506254, 'devloc': 234881040L, 'uname': 'balhoff', 'nlink': 1, 'gid': 501, 'mtime': 1191506201, 'atime': 1191506254, 'inode': 1901841L, 'size': 0L}

Jim Balhoff <balhoff>

 

(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:
   
   
Comment:
   

No files currently attached

 

Depends on the following items: None found

Items that depend on this one: None found

 

Carbon-Copy List
  • -email is unavailable- added by malcolm_smith (Posted a comment)
  • -email is unavailable- added by owsla (Posted a comment)
  • -email is unavailable- added by balhoff (Submitted the item)
  •  

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 100 encouragements so far.

    Only logged-in users can vote.

     

     

     

    Follow 3 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2016-01-30 malcolm_smith Carbon-CopyRemoved malcolm_smith => -
    2016-01-30 malcolm_smith Carbon-Copy- => Added malcolm_smith
    2007-12-23 owsla StatusNone => Confirmed

    Back to the top


    Powered by Savane 3.3