Public bug reported:

Binary package hint: rdiff-backup

Running version 1.1.5 (edgy).  I sucessfully completed an initial backup
to a remote server via SSH.  Later, I started another (incremental)
backup to the same destination.  This was interrupted (probably due to a
network problem).  Any subsequent attempts to perform a backup to this
destination result in the following stacktrace, which occurs soon after
starting the command (maybe 15 seconds or so):

Executing ssh -C backupserver rdiff-backup --server
Unable to import module posix1e from pylibacl package.
ACLs not supported on filesystem at /
-----------------------------------------------------------------
Detected abilities for source (read only) file system:
  Access control lists                         Off
  Extended attributes                          On
  Case sensitivity                             On
  Mac OS X style resource forks                Off
  Mac OS X Finder information                  Off
-----------------------------------------------------------------
ACLs not supported by filesystem at 
rdiff_backups/waldo3/rdiff-backup-data/rdiff-backup.tmp.0
-----------------------------------------------------------------
Detected abilities for destination (read/write) file system:
  Ownership changing                           Off
  Hard linking                                 On
  fsync() directories                          On
  Directory inc permissions                    On
  High-bit permissions                         On
  Extended filenames                           On
  Access control lists                         Off
  Extended attributes                          On
  Case sensitivity                             On
  Mac OS X style resource forks                Off
  Mac OS X Finder information                  Off
-----------------------------------------------------------------
Exception '' raised of class 'exceptions.AssertionError':
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 295, in 
error_check_Main
    try: Main(arglist)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 315, in 
Main
    take_action(rps)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 271, in 
take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 328, in 
Backup
    backup_final_init(rpout)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 425, in 
backup_final_init
    checkdest_if_necessary(rpout)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 820, in 
checkdest_if_necessary
    need_check = checkdest_need_check(dest_rp)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 810, in 
checkdest_need_check
    if not force: curmir_incs[0].conn.regress.check_pids(curmir_incs)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/connection.py", line 448, 
in __call__
    return apply(self.connection.reval, (self.name,) + args)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/connection.py", line 367, 
in reval
    for arg in args: self._put(arg, req_num)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/connection.py", line 139, 
in _put
    else: self._putobj(obj, req_num)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/connection.py", line 144, 
in _putobj
    self._write("o", pickle.dumps(obj, 1), req_num)
  File "pickle.py", line 1386, in dumps
    Pickler(file, protocol, bin).dump(obj)
  File "pickle.py", line 231, in dump
    self.save(obj)
  File "pickle.py", line 293, in save
    f(self, obj) # Call unbound method with explicit self
  File "pickle.py", line 614, in save_list
    self._batch_appends(iter(obj))
  File "pickle.py", line 647, in _batch_appends
    save(x)
  File "pickle.py", line 293, in save
    f(self, obj) # Call unbound method with explicit self
  File "pickle.py", line 737, in save_inst
    stuff = getstate()
  File "/usr/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 754, in 
__getstate__
    assert self.conn is Globals.local_connection

Traceback (most recent call last):
  File "/usr/bin/rdiff-backup", line 23, in ?
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 295, in 
error_check_Main
    try: Main(arglist)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 315, in 
Main
    take_action(rps)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 271, in 
take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 328, in 
Backup
    backup_final_init(rpout)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 425, in 
backup_final_init
    checkdest_if_necessary(rpout)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 820, in 
checkdest_if_necessary
    need_check = checkdest_need_check(dest_rp)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/Main.py", line 810, in 
checkdest_need_check
    if not force: curmir_incs[0].conn.regress.check_pids(curmir_incs)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/connection.py", line 448, 
in __call__
    return apply(self.connection.reval, (self.name,) + args)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/connection.py", line 367, 
in reval
    for arg in args: self._put(arg, req_num)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/connection.py", line 139, 
in _put
    else: self._putobj(obj, req_num)
  File "/usr/lib/python2.4/site-packages/rdiff_backup/connection.py", line 144, 
in _putobj
    self._write("o", pickle.dumps(obj, 1), req_num)
  File "/usr/lib/python2.4/pickle.py", line 1386, in dumps
    Pickler(file, protocol, bin).dump(obj)
  File "/usr/lib/python2.4/pickle.py", line 231, in dump
    self.save(obj)
  File "/usr/lib/python2.4/pickle.py", line 293, in save
    f(self, obj) # Call unbound method with explicit self
  File "/usr/lib/python2.4/pickle.py", line 614, in save_list
    self._batch_appends(iter(obj))
  File "/usr/lib/python2.4/pickle.py", line 647, in _batch_appends
    save(x)
  File "/usr/lib/python2.4/pickle.py", line 293, in save
    f(self, obj) # Call unbound method with explicit self
  File "/usr/lib/python2.4/pickle.py", line 737, in save_inst
    stuff = getstate()
  File "/usr/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 754, in 
__getstate__
    assert self.conn is Globals.local_connection
AssertionError
Fatal Error: Lost connection to the remote system
----------------------------------------

If I change the target directory to something different, then it works
again, beginning to backup everything from the beginning.  It seems that
rdiff-backup should be a bit more robust against connection failures, so
as to allow a user to resume where the backup was interrupted from.

** Affects: rdiff-backup (Ubuntu)
     Importance: Undecided
         Status: Unconfirmed

-- 
fails to run after interrupted second backup
https://bugs.launchpad.net/bugs/105310
You received this bug notification because you are a member of Ubuntu
Bugs, which is the bug contact for Ubuntu.

-- 
ubuntu-bugs mailing list
ubuntu-bugs@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to