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

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

[rdiff-backup-users] Odd-length string of type exceptions.TypeError


From: Alastair Rankine
Subject: [rdiff-backup-users] Odd-length string of type exceptions.TypeError
Date: Mon, 30 Jan 2006 23:16:50 +1100

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi Ben and other rdiff-backup experts.

I had been doing my backups from my MacOS laptop to FreeBSD server just fine (both running 1.1.5). I had been running it with --override- chars-to-quote '' argument and decided to try without this, now that 1.1.5 supports detecting case sensitive target filesystems.

Short answer: it died with "Odd-length string of type exceptions.TypeError". Stack trace below.

As a followup question: it now seems that I can't start the backup at all (ie with or without the --override-chars-to-quote argument), as it dies with an assertion error. Just wondering if this is a secondary symptom of the current failure, or something else?

(I should point out that with this error and the one I previously reported ("invalid literal"), the target filesystem hardware is slightly suspect, so there's always that explanation to fall back on...)

Any other ideas appreciated.


#### Here's the first error:

alastair $ rdiff-backup -v5 --include-globbing-filelist backup- includes . claude::/home/backup/al2book/alastair/
Executing ssh -C claude rdiff-backup --server
Unable to import module xattr.
Extended attributes not supported on filesystem at .
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                          Off
  Case sensitivity                             Off
  Mac OS X style resource forks                On
  Mac OS X Finder information                  On
- -----------------------------------------------------------------
Unable to import module xattr.
Extended attributes not supported on filesystem at /home/backup/ al2book/alastair/rdiff-backup-data/rdiff-backup.tmp.0
Unable to import module posix1e from pylibacl package.
ACLs not supported on filesystem at /home/backup/al2book/alastair/ 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                    Off
  High-bit permissions                         Off
  Extended filenames                           On
  Access control lists                         Off
  Extended attributes                          Off
  Case sensitivity                             On
  Mac OS X style resource forks                Off
  Mac OS X Finder information                  Off
- -----------------------------------------------------------------
Reading globbing filelist backup-includes
Starting increment operation . to /home/backup/al2book/alastair
Processing changed file .
Incrementing mirror file /home/backup/al2book/alastair
Processing changed file .bash_history
Incrementing mirror file /home/backup/al2book/alastair/.bash_history
Processing changed file .emacs
Incrementing mirror file /home/backup/al2book/alastair/.emacs
Processing changed file .emacs.d
Incrementing mirror file /home/backup/al2book/alastair/.emacs.d
Processing changed file .emacs.d/auto-save-list
Incrementing mirror file /home/backup/al2book/alastair/.emacs.d/auto- save-list
Processing changed file .gnupg
Incrementing mirror file /home/backup/al2book/alastair/.gnupg
Sending back exception Odd-length string of type exceptions.TypeError:
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 335, in answer_request
    result = apply(eval(request.function_string), argument_list)
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 483, in readfromid
    if length is None: return cls.vfiles[id].read()
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ iterfile.py", line 302, in read
    if not self.addtobuffer(): break
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ iterfile.py", line 325, in addtobuffer
    try: currentobj = self.iter.next()
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ backup.py", line 166, in get_sigs
    for src_rorp, dest_rorp in cls.CCPP:
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ backup.py", line 306, in next
    source_rorp, dest_rorp = self.iter.next()
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ rorpiter.py", line 100, in Collate2Iters
    try: relem2 = riter2.next()
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ metadata.py", line 271, in iterate
    try: yield self.record_to_object(record)
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ metadata.py", line 178, in Record2RORP
    else: data_dict['resourcefork'] = binascii.unhexlify(data)

Sending back exception Odd-length string of type exceptions.TypeError:
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 335, in answer_request
    result = apply(eval(request.function_string), argument_list)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 483, in readfromid
    if length is None: return cls.vfiles[id].read()
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ iterfile.py", line 302, in read
    if not self.addtobuffer(): break
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ iterfile.py", line 325, in addtobuffer
    try: currentobj = self.iter.next()
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ backup.py", line 103, in get_diffs
    for dest_sig in dest_sigiter:
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ iterfile.py", line 382, in next
    while not type: type, data = self._get()
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ iterfile.py", line 414, in _get
    if not self.buf: self.buf += self.file.read()
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 516, in read
    return self.connection.VirtualFile.readfromid(self.id, length)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 370, in reval
    if isinstance(result, Exception): raise result

Sending back exception Odd-length string of type exceptions.TypeError:
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 335, in answer_request
    result = apply(eval(request.function_string), argument_list)
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ backup.py", line 227, in patch_and_increment
    for diff in rorpiter.FillInIter(source_diffiter, dest_rpath):
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ rorpiter.py", line 177, in FillInIter
    for rp in rpiter:
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ iterfile.py", line 382, in next
    while not type: type, data = self._get()
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ iterfile.py", line 414, in _get
    if not self.buf: self.buf += self.file.read()
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 516, in read
    return self.connection.VirtualFile.readfromid(self.id, length)
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
File "/usr/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 370, in reval
    if isinstance(result, Exception): raise result

Exception 'Odd-length string' raised of class 'exceptions.TypeError':
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 295, in error_check_Main
    try: Main(arglist)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 315, in Main
    take_action(rps)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 271, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 334, in Backup
    backup.Mirror_and_increment(rpin, rpout, incdir)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ backup.py", line 51, in Mirror_and_increment
    DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 370, in reval
    if isinstance(result, Exception): raise result

Traceback (most recent call last):
  File "/opt/local/bin/rdiff-backup", line 23, in ?
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 295, in error_check_Main
    try: Main(arglist)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 315, in Main
    take_action(rps)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 271, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 334, in Backup
    backup.Mirror_and_increment(rpin, rpout, incdir)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ backup.py", line 51, in Mirror_and_increment
    DestS.patch_and_increment(dest_rpath, source_diffiter, inc_rpath)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 370, in reval
    if isinstance(result, Exception): raise result
TypeError: Odd-length string


#### and here is the subsequent error:

alastair $ rdiff-backup -v5 --override-chars-to-quote '' --include- globbing-filelist backup-includes . claude::/home/backup/al2book/ alastair/
Executing ssh -C claude rdiff-backup --server
Unable to import module xattr.
Extended attributes not supported on filesystem at .
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                          Off
  Case sensitivity                             Off
  Mac OS X style resource forks                On
  Mac OS X Finder information                  On
- -----------------------------------------------------------------
Unable to import module xattr.
Extended attributes not supported on filesystem at /home/backup/ al2book/alastair/rdiff-backup-data/rdiff-backup.tmp.0
Unable to import module posix1e from pylibacl package.
ACLs not supported on filesystem at /home/backup/al2book/alastair/ 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                    Off
  High-bit permissions                         Off
  Extended filenames                           On
  Access control lists                         Off
  Extended attributes                          Off
  Case sensitivity                             On
  Mac OS X style resource forks                Off
  Mac OS X Finder information                  Off
- -----------------------------------------------------------------
Exception '' raised of class 'exceptions.AssertionError':
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 295, in error_check_Main
    try: Main(arglist)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 315, in Main
    take_action(rps)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 271, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 328, in Backup
    backup_final_init(rpout)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 425, in backup_final_init
    checkdest_if_necessary(rpout)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 820, in checkdest_if_necessary
    need_check = checkdest_need_check(dest_rp)
File "/opt/local/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 "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 367, in reval
    for arg in args: self._put(arg, req_num)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 139, in _put
    else: self._putobj(obj, req_num)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 144, in _putobj
    self._write("o", pickle.dumps(obj, 1), req_num)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 1386, in dumps
    Pickler(file, protocol, bin).dump(obj)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 231, in dump
    self.save(obj)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 293, in save
    f(self, obj) # Call unbound method with explicit self
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 614, in save_list
    self._batch_appends(iter(obj))
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 647, in _batch_appends
    save(x)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 293, in save
    f(self, obj) # Call unbound method with explicit self
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 737, in save_inst
    stuff = getstate()
File "/opt/local/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 "/opt/local/bin/rdiff-backup", line 23, in ?
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 295, in error_check_Main
    try: Main(arglist)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 315, in Main
    take_action(rps)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 271, in take_action
    elif action == "backup": Backup(rps[0], rps[1])
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 328, in Backup
    backup_final_init(rpout)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 425, in backup_final_init
    checkdest_if_necessary(rpout)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ Main.py", line 820, in checkdest_if_necessary
    need_check = checkdest_need_check(dest_rp)
File "/opt/local/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 "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 367, in reval
    for arg in args: self._put(arg, req_num)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 139, in _put
    else: self._putobj(obj, req_num)
File "/opt/local/lib/python2.4/site-packages/rdiff_backup/ connection.py", line 144, in _putobj
    self._write("o", pickle.dumps(obj, 1), req_num)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 1386, in dumps
    Pickler(file, protocol, bin).dump(obj)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 231, in dump
    self.save(obj)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 293, in save
    f(self, obj) # Call unbound method with explicit self
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 614, in save_list
    self._batch_appends(iter(obj))
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 647, in _batch_appends
    save(x)
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 293, in save
    f(self, obj) # Call unbound method with explicit self
File "/opt/local/Library/Frameworks/Python.framework/Versions/2.4/ lib/python2.4/pickle.py", line 737, in save_inst
    stuff = getstate()
File "/opt/local/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

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.2 (Darwin)

iEYEARECAAYFAkPeA7cACgkQ9jqa2eRLIcf74wCfcUVKuwjY1i/W7WTxaznR7yvG
71wAn2ahqsBuCv4fi3kWwgKCwFfabKbq
=b2qh
-----END PGP SIGNATURE-----




reply via email to

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