bzr switch -b existing_branch crashes (TooManyConcurrentRequests)

Bug #1120055 reported by edA-qa
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
New
Undecided
Unassigned

Bug Description

If you try to create a branch over an existing one you get a Python crash. I would expect a nice error message indicating the branch already exists.

For a clone somewhere just run this command twice:
  bzr switch -b lp:~user/project/branch

----

bzr: ERROR: bzrlib.errors.TooManyConcurrentRequests: The medium 'SmartSSHClientMedium(bzr+ssh://<email address hidden>/)' has reached its concurrent request limit. Be sure to finish_writing and finish_reading on the currently open request.

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 920, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 1131, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 673, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 695, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 136, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 166, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/builtins.py", line 6270, in run
    source_branch=branch).open_branch()
  File "/usr/lib/python2.7/dist-packages/bzrlib/bzrdir.py", line 366, in sprout
    create_tree_if_local=create_tree_if_local)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 132, in run
    self.cleanups, self.func, self, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/cleanup.py", line 166, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/bzrdir.py", line 416, in _sprout
    result_repo.fetch(source_repository, fetch_spec=fetch_spec)
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 2157, in fetch
    find_ghosts=find_ghosts, fetch_spec=fetch_spec)
  File "/usr/lib/python2.7/dist-packages/bzrlib/decorators.py", line 218, in write_locked
    result = unbound(self, *args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/vf_repository.py", line 2584, in fetch
    find_ghosts=find_ghosts)
  File "/usr/lib/python2.7/dist-packages/bzrlib/fetch.py", line 77, in __init__
    self.__fetch()
  File "/usr/lib/python2.7/dist-packages/bzrlib/fetch.py", line 104, in __fetch
    self._fetch_everything_for_search(search_result)
  File "/usr/lib/python2.7/dist-packages/bzrlib/fetch.py", line 132, in _fetch_everything_for_search
    stream, from_format, [])
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 2881, in insert_stream
    (verb, path, resume_tokens) + lock_args, byte_stream)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 108, in call_with_body_stream
    expect_response_body=False)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 55, in _call_and_read_response
    return request.call_and_read_response()
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 157, in call_and_read_response
    return self._call(protocol_version)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 189, in _call
    response_handler = self._send(protocol_version)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 267, in _send
    self._send_no_retry(encoder)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 313, in _send_no_retry
    self.body_stream)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/protocol.py", line 1275, in _iter_with_errors
    yield None, iterator.next()
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/repository.py", line 629, in _stream_to_byte_stream
    for substream_type, substream in stream:
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 3066, in missing_parents_chain
    for kind, stream in self._get_stream(sources[0], search):
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 3012, in _get_stream
    verb, args, search_bytes)
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 93, in _call_with_body_bytes_expecting_body
    method, args, body_bytes)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 97, in call_with_body_bytes_expecting_body
    method, args, body=body, expect_response_body=True)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 55, in _call_and_read_response
    return request.call_and_read_response()
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 157, in call_and_read_response
    return self._call(protocol_version)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 189, in _call
    response_handler = self._send(protocol_version)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 265, in _send
    encoder, response_handler = self._construct_protocol(protocol_version)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/client.py", line 241, in _construct_protocol
    request = self.client._medium.get_request()
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/medium.py", line 884, in get_request
    return SmartClientStreamMediumRequest(self)
  File "/usr/lib/python2.7/dist-packages/bzrlib/smart/medium.py", line 1167, in __init__
    raise errors.TooManyConcurrentRequests(self._medium)
TooManyConcurrentRequests: The medium 'SmartSSHClientMedium(bzr+ssh://<email address hidden>/)' has reached its concurrent request limit. Be sure to finish_writing and finish_reading on the currently open request.

bzr 2.5.1 on python 2.7.3 (Linux-3.2.0-38-generic-x86_64-with-
    Ubuntu-12.04-precise)
arguments: ['/usr/bin/bzr', 'switch', '-b', 'lp:~eda-
    qa/mortoray.com/type_convert_test']
plugins: bash_completion[2.5.1], bzrtools[2.5.0], changelog_merge[2.5.1],
    launchpad[2.5.1], netrc_credential_store[2.5.1], news_merge[2.5.1],
    po_merge[2.5.1], qbzr[0.22.2], weave_fmt[2.5.1]
encoding: 'utf-8', fsenc: 'UTF-8', lang: 'en_GB.UTF-8'

*** Bazaar has encountered an internal error. This probably indicates a
    bug in Bazaar. You can help us fix it by filing a bug report at
        https://bugs.launchpad.net/bzr/+filebug
    including this traceback and a description of the problem.

----

Bazaar (bzr) 2.5.1
  Python interpreter: /usr/bin/python 2.7.3
  Python standard library: /usr/lib/python2.7
  Platform: Linux-3.2.0-38-generic-x86_64-with-Ubuntu-12.04-precise
  bzrlib: /usr/lib/python2.7/dist-packages/bzrlib

Revision history for this message
Martin Packman (gz) wrote :

This is probably not what you actually want to do, instead switch first, then pull, or just branch.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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