rdiff-backup-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Problems with backup after using rdiff-backup-delete.py


From: Joe Steele
Subject: Re: Problems with backup after using rdiff-backup-delete.py
Date: Mon, 4 Nov 2019 16:35:41 -0500
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:60.0) Gecko/20100101 Thunderbird/60.9.0

On 11/4/2019 2:22 PM, David Bristow wrote:
Hello,
I had to delete all references to a folder in one of my backups, using
rdiff-backup-delete.py, which one of the devs basically wrote for us.
The script completely removes certain files from the backup going back
to the first time it was used.  This is due to the customer requiring
that all copies of certain files are removed.

We used rdiff-backup-delete.py to delete a folder, "ibest", last week.
The folder was removed, but every back up since then has been giving
errors (see below this message).


Interesting. I had not heard of rdiff-backup-delete.py before. It apparently was written by Sol1 a couple years ago and was added to the github repo:

https://github.com/rdiff-backup/rdiff-backup/commit/858fb21806187aac09ba31286eb4d128f4613410

The utility would appear to be incomplete. It makes no attempt to scrub the extended_attributes.*.gz files and the access_control_lists.*.gz files for references to files that are to be deleted.

Your error log implies that rdiff-backup was attempting to perform a regression (regress.py), and in the process of doing that, it was attempting to deal with extended attributes (eas_acls.py: join_ea_iter) when suddenly it could not find a file it needed to process (ibest/original_data/gates_study/0506/basicskillssesa56.dta). I'm guessing that that file name came from the extended_attributes file which the utility didn't scrub.

Another area where the utility is deficient is its failure to look for files that may have been stored under rdiff-backup-data/long_filename_data.

The utility needs some work.

--Joe


"ibest" was the name of the top-level folder whose contents, including
all sub-folders, totally about 250 files and about 2.4G storage, had
been deleted from the source. All metadata and references to these
folders should have been deleted by rdiff-bacup-delete.py.


We are running rdiff-backup-1.2.8-7.el6.x86_64 running on a RHEL box.

Thanks,
David

   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
304, in error_check_Main
     try: Main(arglist)
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
324, in Main
     take_action(rps)
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
280, in take_action
     elif action == "backup": Backup(rps[0], rps[1])
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
337, in Backup
     backup_final_init(rpout)
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
501, in backup_final_init
     checkdest_if_necessary(rpout)
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
920, in checkdest_if_necessary
     dest_rp.conn.regress.Regress(dest_rp)
   File "/usr/lib64/python2.6/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/lib64/python2.6/site-packages/rdiff_backup/regress.py",
line 197, in iterate_meta_rfs
     for raw_rf, metadata_rorp in collated:
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/rorpiter.py",
line 100, in Collate2Iters
     try: relem2 = riter2.next()
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/eas_acls.py",
line 210, in join_ea_iter
     assert rorp, "Missing rorp for index %s" % (ea.index,)
Traceback (most recent call last):
   File "/usr/bin/rdiff-backup", line 30, in <module>
     rdiff_backup.Main.error_check_Main(sys.argv[1:])
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
304, in error_check_Main
     try: Main(arglist)
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
324, in Main
     take_action(rps)
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
280, in take_action
     elif action == "backup": Backup(rps[0], rps[1])
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
337, in Backup
     backup_final_init(rpout)
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
501, in backup_final_init
     checkdest_if_necessary(rpout)
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/Main.py", line
920, in checkdest_if_necessary
     dest_rp.conn.regress.Regress(dest_rp)
   File "/usr/lib64/python2.6/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/lib64/python2.6/site-packages/rdiff_backup/regress.py",
line 197, in iterate_meta_rfs
     for raw_rf, metadata_rorp in collated:
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/rorpiter.py",
line 100, in Collate2Iters
     try: relem2 = riter2.next()
   File "/usr/lib64/python2.6/site-packages/rdiff_backup/eas_acls.py",
line 210, in join_ea_iter
     assert rorp, "Missing rorp for index %s" % (ea.index,)
AssertionError: Missing rorp for index ('ibest', 'original_data',
'gates_study', '0506', 'basicskillssesa56.dta')






reply via email to

[Prev in Thread] Current Thread [Next in Thread]