Fri 12 Jul 2013 08:41:18 PM UTC, original submission:
Hello,
After an aborted backup I always get this error:
Previous backup seems to have failed, regressing destination now.
...
AssertionError: Bad index order: ('long_filename_data', '1') >= ('b',)
I append a patch with this bug report. It cures the error but I did not check whether the regression is doing now what it is intended to do. The error is caused by filenames which are to long to be saved on the target directory. Rdiff-backup uses the 'AlternateMirrorName' technique in this case. My target directory is an encfs encrypted directory with filename encryption. Filenames are limited to 189 bytes.
Here are my findings. Line 275 of rorpiter.py throws the error. The line test for the index order. The index order is an alphabetical filename order. Line 255 of longname.py opens a new 'mirror_rp' with 'index' ,,('long_filename_data', '1')'' for regression. This index is used for the index test but it should be tested against the long filename related to this regression.
In my example the long filename is 190 bytes 'a190byteaaaa...aaa'. A second file following the long file name is necessary to throw the error. I use filename 'b'. The error only occurs if both files are alphabetically placed before the string 'long_filename_data'.
my system:
Debian 7.1
rdiff-backup 1.2.8
I know, this is more or less an auto information list. V1.2.8 is from 2009. Should I post the bug report on Debian to get the patch publicized?
Many thanks to the developers of rdiff-backup!!!
Christian
|