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

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

[Rdiff-backup-bugs] [bug #27057] regress impossible once out of disk spa


From: Luke Plant
Subject: [Rdiff-backup-bugs] [bug #27057] regress impossible once out of disk space
Date: Mon, 20 Jul 2009 10:34:41 +0000
User-agent: Opera/9.80 (X11; Linux i686; U; en-GB) Presto/2.2.15 Version/10.00

URL:
  <http://savannah.nongnu.org/bugs/?27057>

                 Summary: regress impossible once out of disk space
                 Project: rdiff-backup
            Submitted by: spookylukey
            Submitted on: Mon 20 Jul 2009 10:34:39 GMT
                Category: None
                Severity: 3 - Normal
              Item Group: None
                  Status: None
                 Privacy: Public
             Assigned to: None
             Open/Closed: Open
         Discussion Lock: Any

    _______________________________________________________

Details:

I ran out of space on a backup device, and now I can't recover it.  If I do:

rdiff-backup --check-destination-dir  /my/backup/dir

then I get more out of space errors.

Exception '[Errno 28] No space left on device' raised of class '<type
'exceptions.IOError'>':
  File "/var/lib/python-support/python2.6/rdiff_backup/Main.py", line 304, in
error_check_Main
    try: Main(arglist)
  File "/var/lib/python-support/python2.6/rdiff_backup/Main.py", line 324, in
Main
    take_action(rps)
  File "/var/lib/python-support/python2.6/rdiff_backup/Main.py", line 282, in
take_action
    elif action == "check-destination-dir": CheckDest(rps[0])
  File "/var/lib/python-support/python2.6/rdiff_backup/Main.py", line 857, in
CheckDest
    dest_rp.conn.regress.Regress(dest_rp)
  File "/var/lib/python-support/python2.6/rdiff_backup/regress.py", line 71,
in Regress
    for rf in iterate_meta_rfs(mirror_rp, inc_rpath): ITR(rf.index, rf)
  File "/var/lib/python-support/python2.6/rdiff_backup/rorpiter.py", line
281, in __call__
    last_branch.fast_process(*args)
  File "/var/lib/python-support/python2.6/rdiff_backup/regress.py", line 268,
in fast_process
    if rf.metadata_rorp.isreg(): self.restore_orig_regfile(rf)
  File "/var/lib/python-support/python2.6/rdiff_backup/regress.py", line 290,
in restore_orig_regfile
    tf.write_from_fileobj(rf.get_restore_fp())
  File "/var/lib/python-support/python2.6/rdiff_backup/rpath.py", line 1195,
in write_from_fileobj
    copyfileobj(fp, outfp)
  File "/var/lib/python-support/python2.6/rdiff_backup/rpath.py", line 64, in
copyfileobj
    outputfp.write(inbuf)

Traceback (most recent call last):
  File "/usr/bin/rdiff-backup", line 30, in <module>
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
  File "/var/lib/python-support/python2.6/rdiff_backup/Main.py", line 304, in
error_check_Main
    try: Main(arglist)
  File "/var/lib/python-support/python2.6/rdiff_backup/Main.py", line 324, in
Main
    take_action(rps)
  File "/var/lib/python-support/python2.6/rdiff_backup/Main.py", line 282, in
take_action
    elif action == "check-destination-dir": CheckDest(rps[0])
  File "/var/lib/python-support/python2.6/rdiff_backup/Main.py", line 857, in
CheckDest
    dest_rp.conn.regress.Regress(dest_rp)
  File "/var/lib/python-support/python2.6/rdiff_backup/regress.py", line 71,
in Regress
    for rf in iterate_meta_rfs(mirror_rp, inc_rpath): ITR(rf.index, rf)
  File "/var/lib/python-support/python2.6/rdiff_backup/rorpiter.py", line
281, in __call__
    last_branch.fast_process(*args)
  File "/var/lib/python-support/python2.6/rdiff_backup/regress.py", line 268,
in fast_process
    if rf.metadata_rorp.isreg(): self.restore_orig_regfile(rf)
  File "/var/lib/python-support/python2.6/rdiff_backup/regress.py", line 290,
in restore_orig_regfile
    tf.write_from_fileobj(rf.get_restore_fp())
  File "/var/lib/python-support/python2.6/rdiff_backup/rpath.py", line 1195,
in write_from_fileobj
    copyfileobj(fp, outfp)
  File "/var/lib/python-support/python2.6/rdiff_backup/rpath.py", line 64, in
copyfileobj
    outputfp.write(inbuf)
IOError: [Errno 28] No space left on device


I tried deleting files on the device (not related to the backup) but this
seemed to do no good (according to 'df').  I'm guessing this may be because I
have mounted the device with the 'acl' option (which I need to backup the ACLs
on my source device).  I can delete quite large files on the backup device
without gaining any 'available' space.

This is a very serious bug in rdiff-backup.  I cannot regress the backup, or
remove older increments etc, so my backup is now effectively useless.

A workaround would be manually remove old increment files.  But I have no
idea how to do this, and would only think of doing it via a script which did
the right thing, otherwise I just risk corrupting my backup further - as the
man page says:

<<<
Note that you should not write to the mirror directory except with
rdiff-backup.
>>>





    _______________________________________________________

Reply to this item at:

  <http://savannah.nongnu.org/bugs/?27057>

_______________________________________________
  Message sent via/by Savannah
  http://savannah.nongnu.org/





reply via email to

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