bzr export --per-file-timestamps over bzr+ssh causes bzrlib.errors.TooManyConcurrentRequests

Bug #1257078 reported by Christian Boltz
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Bazaar
Confirmed
Undecided
Unassigned

Bug Description

bzr export --per-file-timestamps -r 2259 apparmor-2.8.95 lp:apparmor

fails with

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/lib64/python2.7/site-packages/bzrlib/commands.py", line 930, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/bzrlib/commands.py", line 1121, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib64/python2.7/site-packages/bzrlib/commands.py", line 673, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib64/python2.7/site-packages/bzrlib/commands.py", line 697, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/bzrlib/cleanup.py", line 136, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/bzrlib/cleanup.py", line 166, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/bzrlib/builtins.py", line 3352, in run
    per_file_timestamps=per_file_timestamps)
  File "/usr/lib64/python2.7/site-packages/bzrlib/export/__init__.py", line 175, in export
    per_file_timestamps, fileobj):
  File "/usr/lib64/python2.7/site-packages/bzrlib/export/__init__.py", line 143, in get_export_generator
    force_mtime=force_mtime, fileobj=fileobj):
  File "/usr/lib64/python2.7/site-packages/bzrlib/export/dir_exporter.py", line 93, in dir_exporter_generator
    mtime = tree.get_file_mtime(file_id, treepath)
  File "/usr/lib64/python2.7/site-packages/bzrlib/revisiontree.py", line 109, in get_file_mtime
    revision = self._repository.get_revision(ie.revision)
  File "/usr/lib64/python2.7/site-packages/bzrlib/decorators.py", line 155, in read_locked
    result = unbound(self, *args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/bzrlib/remote.py", line 2047, in get_revision
    return self.get_revisions([revision_id])[0]
  File "/usr/lib64/python2.7/site-packages/bzrlib/decorators.py", line 155, in read_locked
    result = unbound(self, *args, **kwargs)
  File "/usr/lib64/python2.7/site-packages/bzrlib/remote.py", line 2676, in get_revisions
    for rev in self._iter_revisions_rpc(revision_ids):
  File "/usr/lib64/python2.7/site-packages/bzrlib/remote.py", line 2643, in _iter_revisions_rpc
    "Repository.iter_revisions", (path, ), body))
  File "/usr/lib64/python2.7/site-packages/bzrlib/remote.py", line 93, in _call_with_body_bytes_expecting_body
    method, args, body_bytes)
  File "/usr/lib64/python2.7/site-packages/bzrlib/smart/client.py", line 97, in call_with_body_bytes_expecting_body
    method, args, body=body, expect_response_body=True)
  File "/usr/lib64/python2.7/site-packages/bzrlib/smart/client.py", line 55, in _call_and_read_response
    return request.call_and_read_response()
  File "/usr/lib64/python2.7/site-packages/bzrlib/smart/client.py", line 157, in call_and_read_response
    return self._call(protocol_version)
  File "/usr/lib64/python2.7/site-packages/bzrlib/smart/client.py", line 189, in _call
    response_handler = self._send(protocol_version)
  File "/usr/lib64/python2.7/site-packages/bzrlib/smart/client.py", line 265, in _send
    encoder, response_handler = self._construct_protocol(protocol_version)
  File "/usr/lib64/python2.7/site-packages/bzrlib/smart/client.py", line 241, in _construct_protocol
    request = self.client._medium.get_request()
  File "/usr/lib64/python2.7/site-packages/bzrlib/smart/medium.py", line 884, in get_request
    return SmartClientStreamMediumRequest(self)
  File "/usr/lib64/python2.7/site-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.6.0 on python 2.7.6 (Linux-3.12.1-2-desktop-x86_64-with-
    SuSE-13.1-x86_64)
arguments: ['/usr/bin/bzr', 'export', '--per-file-timestamps', '-r', '2259',
    'apparmor-2.8.95', 'lp:apparmor']
plugins: bash_completion[2.6.0], changelog_merge[2.6.0], grep[2.6.0],
    launchpad[2.6.0], netrc_credential_store[2.6.0], news_merge[2.6.0],
    po_merge[2.6.0], weave_fmt[2.6.0]
encoding: 'iso8859-15', fsenc: 'ISO-8859-15', lang: 'de_DE@euro'

*** 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.

Revision history for this message
Matthew Fuller (fullermd) wrote :

This appears to be caused by --per-file-timestamps; without it the export completes fine. So something in implementing that option is probably forgetting about an already existing connection.

Changed in bzr:
status: New → Confirmed
summary: - bzr export fails with "bzrlib.errors.TooManyConcurrentRequests:"
+ bzr export --per-file-timestamps over bzr+ssh causes
+ bzrlib.errors.TooManyConcurrentRequests
Revision history for this message
Matthew Fuller (fullermd) wrote :

Note that over https:// it completes without error, so it's bzr+ssh specific.

Jelmer Vernooij (jelmer)
tags: added: check-for-breezy
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.