EBADF in paramiko during parallel selftest

Bug #656170 reported by Martin Pool
22
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Bazaar
Fix Released
High
John A Meinel

Bug Description

Traceback (most recent call last):
  File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
    self.run()
  File "/usr/lib/python2.6/threading.py", line 484, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/lib/pymodules/python2.6/paramiko/sftp_file.py", line 453, in _prefetch_thread
    self.sftp._async_request(self, CMD_READ, self.handle, long(offset), int(length))
  File "/usr/lib/pymodules/python2.6/paramiko/sftp_client.py", line 649, in _async_request
    self._send_packet(t, str(msg))
  File "/usr/lib/pymodules/python2.6/paramiko/sftp.py", line 172, in _send_packet
    self._write_all(out)
  File "/usr/lib/pymodules/python2.6/paramiko/sftp.py", line 136, in _write_all
    n = self.sock.send(out)
  File "/home/mbp/bzr/work/bzrlib/transport/ssh.py", line 200, in send
    return self.__socket.send(data)
  File "/usr/lib/python2.6/socket.py", line 167, in _dummy
    raise error(EBADF, 'Bad file descriptor')
error: [Errno 9] Bad file descriptor

I suspect this indicates a bad timing dependency in tearing down the server. I have seen this a couple of times with parallel tests and never otherwise.

Related branches

Revision history for this message
Martin Pool (mbp) wrote :
Download full text (3.2 KiB)

For me, this consistently happens when I run parallel tests, and never otherwise.

But on pqm, which is not running parallel tests (afaik), it does occur:

Exception in thread Thread-3071:
Traceback (most recent call last):
 File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
   self.run()
 File "/usr/lib/python2.6/threading.py", line 484, in run
   self.__target(*self.__args, **self.__kwargs)
 File "/usr/lib/pymodules/python2.6/paramiko/sftp_file.py", line 453, in _prefetch_thread
   self.sftp._async_request(self, CMD_READ, self.handle, long(offset), int(length))
 File "/usr/lib/pymodules/python2.6/paramiko/sftp_client.py", line 649, in _async_request
   self._send_packet(t, str(msg))
 File "/usr/lib/pymodules/python2.6/paramiko/sftp.py", line 172, in _send_packet
   self._write_all(out)
 File "/usr/lib/pymodules/python2.6/paramiko/sftp.py", line 136, in _write_all
   n = self.sock.send(out)
 File "/home/pqm/bzr-pqm-workdir/home/+trunk/bzrlib/transport/ssh.py", line 200, in send
   return self.__socket.send(data)
 File "/usr/lib/python2.6/socket.py", line 165, in _dummy
   raise error(EBADF, 'Bad file descriptor')
error: [Errno 9] Bad file descriptor

Exception in thread Thread-3077:
Traceback (most recent call last):
 File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
   self.run()
 File "/usr/lib/python2.6/threading.py", line 484, in run
   self.__target(*self.__args, **self.__kwargs)
 File "/usr/lib/pymodules/python2.6/paramiko/sftp_file.py", line 453, in _prefetch_thread
   self.sftp._async_request(self, CMD_READ, self.handle, long(offset), int(length))
 File "/usr/lib/pymodules/python2.6/paramiko/sftp_client.py", line 649, in _async_request
   self._send_packet(t, str(msg))
 File "/usr/lib/pymodules/python2.6/paramiko/sftp.py", line 172, in _send_packet
   self._write_all(out)
 File "/usr/lib/pymodules/python2.6/paramiko/sftp.py", line 136, in _write_all
   n = self.sock.send(out)
 File "/home/pqm/bzr-pqm-workdir/home/+trunk/bzrlib/transport/ssh.py", line 200, in send
   return self.__socket.send(data)
 File "/usr/lib/python2.6/socket.py", line 165, in _dummy
   raise error(EBADF, 'Bad file descriptor')
error: [Errno 9] Bad file descriptor

Exception in thread Thread-3083:
Traceback (most recent call last):
 File "/usr/lib/python2.6/threading.py", line 532, in __bootstrap_inner
   self.run()
 File "/usr/lib/python2.6/threading.py", line 484, in run
   self.__target(*self.__args, **self.__kwargs)
 File "/usr/lib/pymodules/python2.6/paramiko/sftp_file.py", line 453, in _prefetch_thread
   self.sftp._async_request(self, CMD_READ, self.handle, long(offset), int(length))
 File "/usr/lib/pymodules/python2.6/paramiko/sftp_client.py", line 649, in _async_request
   self._send_packet(t, str(msg))
 File "/usr/lib/pymodules/python2.6/paramiko/sftp.py", line 172, in _send_packet
   self._write_all(out)
 File "/usr/lib/pymodules/python2.6/paramiko/sftp.py", line 136, in _write_all
   n = self.sock.send(out)
 File "/home/pqm/bzr-pqm-workdir/home/+trunk/bzrlib/transport/ssh.py", line 200, in send
   return self.__socket.send(data)
 File "/usr/lib/python2.6/socket.py", line 165, in _dummy
   raise error(EBADF, 'Ba...

Read more...

John A Meinel (jameinel)
Changed in bzr:
assignee: nobody → John A Meinel (jameinel)
status: Confirmed → In Progress
Martin Packman (gz)
Changed in bzr:
milestone: none → 2.4b3
status: In Progress → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Duplicates of this bug

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.