no clean abort after bzr+ssh:// connection timeout. ERROR: exceptions.AssertionError: end of file reading from server.

Bug #115601 reported by Kai Schroeder
26
Affects Status Importance Assigned to Milestone
Bazaar
Fix Released
High
Ian Clatworthy

Bug Description

bzr should abort cleanly after a connection timeout. commandline output:

bzr pull
Using saved location: bzr+ssh://<email address hidden>/home/user/bzr/

ssh: connect to host myhost.de port 22: Connection timed out
ssh: connect to host myhost.de port 22: Connection timed out
bzr: ERROR: exceptions.AssertionError: end of file reading from server.

Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 650, in run_bzr_catch_errors
    return run_bzr(argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 612, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 304, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.5/site-packages/bzrlib/builtins.py", line 602, in run
    branch_from = Branch.open(location)
  File "/usr/lib/python2.5/site-packages/bzrlib/branch.py", line 129, in open
    control = bzrdir.BzrDir.open(base, _unsupported)
  File "/usr/lib/python2.5/site-packages/bzrlib/bzrdir.py", line 545, in open
    return BzrDir.open_from_transport(t, _unsupported=_unsupported)
  File "/usr/lib/python2.5/site-packages/bzrlib/bzrdir.py", line 580, in open_from_transport
    redirected)
  File "/usr/lib/python2.5/site-packages/bzrlib/transport/__init__.py", line 1074, in do_catching_redirections
    return action(transport)
  File "/usr/lib/python2.5/site-packages/bzrlib/bzrdir.py", line 557, in find_format
    return transport, BzrDirFormat.find_format(transport)
  File "/usr/lib/python2.5/site-packages/bzrlib/bzrdir.py", line 1235, in find_format
    return format.probe_transport(transport)
  File "/usr/lib/python2.5/site-packages/bzrlib/bzrdir.py", line 1245, in probe_transport
    format_string = transport.get(".bzr/branch-format").read()
  File "/usr/lib/python2.5/site-packages/bzrlib/transport/smart.py", line 1060, in get
    return StringIO(self.get_bytes(relpath))
  File "/usr/lib/python2.5/site-packages/bzrlib/transport/smart.py", line 1066, in get_bytes
    resp = protocol.read_response_tuple(True)
  File "/usr/lib/python2.5/site-packages/bzrlib/transport/smart.py", line 1504, in read_response_tuple
    result = self._recv_tuple()
  File "/usr/lib/python2.5/site-packages/bzrlib/transport/smart.py", line 1535, in _recv_tuple
    assert new_char != '', "end of file reading from server."
AssertionError: end of file reading from server.

bzr 0.15.0 on python 2.5.1.candidate.1 (linux2)
arguments: ['/usr/bin/bzr', 'pull']

** please send this report to <email address hidden>

Tags: hpss ui
Revision history for this message
John A Meinel (jameinel) wrote :

Confirmed. In general there are quite a few cases where the smart server code doesn't handle disconnects/timeouts/etc in a clean manner.

Changed in bzr:
importance: Undecided → High
status: Unconfirmed → Confirmed
description: updated
Changed in bzr:
assignee: nobody → ian-clatworthy
Changed in bzr:
status: Confirmed → Fix Committed
Vincent Ladeuil (vila)
Changed in bzr:
milestone: none → 0.92
status: Fix Committed → 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.