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

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

[rdiff-backup-users] IOError: [Errno 9] Bad file descriptor


From: Nejc Škoberne
Subject: [rdiff-backup-users] IOError: [Errno 9] Bad file descriptor
Date: Tue, 16 Sep 2008 13:12:46 +0200
User-agent: Thunderbird 2.0.0.16 (Windows/20080708)

Hello.

I am running rdiff-backup 1.2.0 on FreeBSD 6.2. I am trying to backup my whole 
system to
a remote server (also has rdiff-backup on FreeBSD 6.2). Things to note:

1. I tried to run this command:

   /usr/local/bin/rdiff-backup -v5 --print-statistics /  192.168.1.1::/backup

   also with other servers (all running FreeBSD 6.2 and rdiff-backup 1.2.0), 
and the error
   is the same. This makes me think that this cannot be a hardware (NIC or 
switch) problem,
   since I tried copying over different physical interfaces.


2. If I exclude the directory /usr/jail/hostSvarun/lib from backup (with 
--exclude), the
   procedure stops somewhere else (/usr/jail/hostSvarun/etc/ttys). However, if 
I backup only
   /usr/jail/hostSvarun/etc directory, everything is fine. This makes me think 
that the
   filesystem cannont be corrupted or something (because it might seem like 
rdiff-backup
   is unable to read the file).

3. 1. and 2. make me think that the error occurs because of some "buffer" which 
could
   get filled up or something, I really don't know.

Any ideas? Thanks.

Here is what I get when running the command:

Processing changed file usr/jail/hostSvarun/lib/libreadline.so.6
Processing changed file usr/jail/hostSvarun/lib/libsbuf.so.3
Processing changed file usr/jail/hostSvarun/lib/libufs.so.3
Processing changed file usr/jail/hostSvarun/lib/libutil.so.5
Processing changed file usr/jail/hostSvarun/lib/libz.so.3
Exception '[Errno 9] Bad file descriptor' raised of class '<type 
'exceptions.IOError'>':
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/robust.py", line 
32, in check_common_error
    try: return function(*args)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/rpath.py", line 
1366, in read
    def read(self, length = -1): return self.file.read(length)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/hash.py", line 42, 
in read
    buf = self.fileobj.read(length)

Sending back exception [Errno 9] Bad file descriptor of type <type 
'exceptions.IOError'>:
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 335, in answer_request
    result = apply(eval(request.function_string), argument_list)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 483, in readfromid
    if length is None: return cls.vfiles[id].read()
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/iterfile.py", line 
302, in read
    if not self.addtobuffer(): break
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/iterfile.py", line 
332, in addtobuffer
    self.addfromfile("f")
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/iterfile.py", line 
224, in addfromfile
    [Globals.blocksize])
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/robust.py", line 
32, in check_common_error
    try: return function(*args)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/rpath.py", line 
1366, in read
    def read(self, length = -1): return self.file.read(length)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/hash.py", line 42, 
in read
    buf = self.fileobj.read(length)

Exception '[Errno 9] Bad file descriptor' raised of class 'exceptions.IOError':
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/robust.py", line 
32, in check_common_error
    try: return function(*args)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 
101, in copy
    if rpin.isreg(): return copy_reg_file(rpin, rpout, compress)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 
129, in copy_reg_file
    return rpout.write_from_fileobj(rpin.open("rb"), compress = compress)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 
1146, in write_from_fileobj
    copyfileobj(fp, outfp)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 58, 
in copyfileobj
    inbuf = inputfp.read(blocksize)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 
1366, in read
    def read(self, length = -1): return self.file.read(length)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/iterfile.py", line 
118, in read
    if not self.addtobuffer(): break
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/iterfile.py", line 
133, in addtobuffer
    type, data = self.iwf._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

Sending back exception [Errno 9] Bad file descriptor of type exceptions.IOError:
  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 
232, in patch
    ITR(diff.index, diff)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rorpiter.py", line 
281, in __call__
    last_branch.fast_process(*args)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/backup.py", line 
529, in fast_process
    if self.patch_to_temp(mirror_rp, diff_rorp, tf):
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/backup.py", line 
550, in patch_to_temp
    result = self.patch_snapshot_to_temp(diff_rorp, new)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/backup.py", line 
579, in patch_snapshot_to_temp
    (diff_rorp, new))
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/robust.py", line 
32, in check_common_error
    try: return function(*args)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 
101, in copy
    if rpin.isreg(): return copy_reg_file(rpin, rpout, compress)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 
129, in copy_reg_file
    return rpout.write_from_fileobj(rpin.open("rb"), compress = compress)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 
1146, in write_from_fileobj
    copyfileobj(fp, outfp)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 58, 
in copyfileobj
    inbuf = inputfp.read(blocksize)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 
1366, in read
    def read(self, length = -1): return self.file.read(length)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/iterfile.py", line 
118, in read
    if not self.addtobuffer(): break
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/iterfile.py", line 
133, in addtobuffer
    type, data = self.iwf._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 '[Errno 9] Bad file descriptor: None' raised of class '<type 
'exceptions.IOError'>':
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 302, 
in error_check_Main
    try: Main(arglist)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 322, 
in Main
    take_action(rps)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 278, 
in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 344, 
in Backup
    backup.Mirror(rpin, rpout)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/backup.py", line 
38, in Mirror
    DestS.patch(dest_rpath, source_diffiter)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 370, in reval
    if isinstance(result, Exception): raise result

Traceback (most recent call last):
  File "/usr/local/bin/rdiff-backup", line 23, in <module>
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 302, 
in error_check_Main
    try: Main(arglist)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 322, 
in Main
    take_action(rps)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 278, 
in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 344, 
in Backup
    backup.Mirror(rpin, rpout)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/backup.py", line 
38, in Mirror
    DestS.patch(dest_rpath, source_diffiter)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 370, in reval
    if isinstance(result, Exception): raise result
IOError: [Errno 9] Bad file descriptor: None
address@hidden:~# Fatal Error: Lost connection to the remote system
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 58, 
in copyfileobj
    inbuf = inputfp.read(blocksize)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/rpath.py", line 
1366, in read
    def read(self, length = -1): return self.file.read(length)
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/iterfile.py", line 
118, in read
    if not self.addtobuffer(): break
  File "/usr/local/lib/python2.4/site-packages/rdiff_backup/iterfile.py", line 
133, in addtobuffer
    type, data = self.iwf._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 '[Errno 9] Bad file descriptor: None' raised of class '<type 
'exceptions.IOError'>':
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 302, 
in error_check_Main
    try: Main(arglist)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 322, 
in Main
    take_action(rps)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 278, 
in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 344, 
in Backup
    backup.Mirror(rpin, rpout)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/backup.py", line 
38, in Mirror
    DestS.patch(dest_rpath, source_diffiter)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 370, in reval
    if isinstance(result, Exception): raise result

Traceback (most recent call last):
  File "/usr/local/bin/rdiff-backup", line 23, in <module>
    rdiff_backup.Main.error_check_Main(sys.argv[1:])
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 302, 
in error_check_Main
    try: Main(arglist)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 322, 
in Main
    take_action(rps)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 278, 
in take_action
    elif action == "backup": Backup(rps[0], rps[1])
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/Main.py", line 344, 
in Backup
    backup.Mirror(rpin, rpout)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/backup.py", line 
38, in Mirror
    DestS.patch(dest_rpath, source_diffiter)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 448, in __call__
    return apply(self.connection.reval, (self.name,) + args)
  File "/usr/local/lib/python2.5/site-packages/rdiff_backup/connection.py", 
line 370, in reval
    if isinstance(result, Exception): raise result
IOError: [Errno 9] Bad file descriptor: None




reply via email to

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