"Could not understand response from smart server" when diffing lightweight checkout of smart server branch

Bug #1046265 reported by Jonathan Lange on 2012-09-05
This bug affects 5 people
Affects Status Importance Assigned to Milestone
John A Meinel

Bug Description

In an existing lightweight checkout of a branch from Launchpad with a local change, running diff generates an error:

$ bzr -Dhpss -Dhpssdetail --no-plugins diff
=== modified file 'sourcedeps.conf'
bzr: ERROR: Could not understand response from smart server: ['x\x9c\xa5\x92\xcb\x0e\x820\x10E\xd7\xf2\x15\xee\r\xad\xa0\x10\x1f\xf1cJ[\xa1\x81>\x9c\xb6$\xb2\xf0\xdb\x85\x80Q0\x01\x13\x17\x93Lf\xe6\xde\x93\xde\x14a!\x8d\x06\x17Z']
HPSS calls: 7 (0 vfs) SmartSSHClientMedium(bzr+ssh://<email address hidden>/)

From ~/.bzr.log:

Wed 2012-09-05 12:16:12 +0100
0.040 bazaar version: 2.6.0dev3
0.040 bzr arguments: [u'-Dhpss', u'-Dhpssdetail', u'--no-plugins', u'diff']
0.045 encoding stdout as sys.stdout encoding 'UTF-8'
0.071 hpss: Built a new medium: SmartSSHClientMedium
0.072 hpss call: 'BzrDir.open_2.1', '~canonical-ca-hackers/ca-configs/pkgimport-configmanager/'
0.072 (to bzr+ssh://bazaar.launchpad.net/~canonical-ca-hackers/ca-configs/pkgimport-configmanager/)
0.095 ssh implementation is OpenSSH
3.137 result: ('yes', 'no')
3.138 hpss call: 'BzrDir.open_branchV3', '~canonical-ca-hackers/ca-configs/pkgimport-configmanager/'
3.138 (to bzr+ssh://bazaar.launchpad.net/~canonical-ca-hackers/ca-configs/pkgimport-configmanager/)
3.239 result: ('branch', 'Bazaar Branch Format 7 (needs bzr 1.6)\n')
3.240 hpss call: 'BzrDir.find_repositoryV3', '~canonical-ca-hackers/ca-configs/pkgimport-configmanager/'
3.240 (to bzr+ssh://bazaar.launchpad.net/~canonical-ca-hackers/ca-configs/pkgimport-configmanager/)
3.341 result: ('ok', '', 'yes', 'no', 'yes', 'Bazaar repository format 2a (needs bzr 1.16 or later)\n')
3.346 hpss call: 'Branch.get_stacked_on_url', '~canonical-ca-hackers/ca-configs/pkgimport-configmanager/'
3.346 (to bzr+ssh://bazaar.launchpad.net/~canonical-ca-hackers/ca-configs/pkgimport-configmanager/)
3.445 result: ('NotStacked',)
3.446 opening working tree '/home/jml/src/ca-configs/pkgimport-configmanager'
3.453 hpss call: 'Branch.get_config_file', '~canonical-ca-hackers/ca-configs/pkgimport-configmanager/'
3.453 (to bzr+ssh://bazaar.launchpad.net/~canonical-ca-hackers/ca-configs/pkgimport-configmanager/)
3.548 result: ('ok',)
3.548 0 body bytes read
3.555 hpss call w/body: 'Repository.iter_revisions', '~canonical-ca-hackers/ca-configs/pkgimport-configmanager/' ('james.westby@canonic'...)
3.555 58 bytes
3.651 result: ('ok', '10')
3.652 291 byte part read
3.655 hpss call w/body: 'Repository.iter_files_bytes', '~canonical-ca-hackers/ca-configs/pkgimport-configmanager/' ('sourcedeps.conf-2012'...)
3.655 108 bytes
3.751 result: ('ok',)
3.751 5 byte part read
3.752 2 byte part read
3.752 198 byte part read
3.752 Transferred: 2kB (0.7kB/s r:1kB w:1kB)
3.767 Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 930, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/commands.py", line 1141, 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 697, 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/commands.py", line 1158, in ignore_pipe
    result = func(*args, **kwargs)
  File "/usr/lib/python2.7/dist-packages/bzrlib/builtins.py", line 2383, in run
  File "/usr/lib/python2.7/dist-packages/bzrlib/diff.py", line 460, in show_diff_trees
    return differ.show_diff(specific_files, extra_trees)
  File "/usr/lib/python2.7/dist-packages/bzrlib/diff.py", line 956, in show_diff
  File "/usr/lib/python2.7/dist-packages/bzrlib/diff.py", line 1016, in _show_diff
  File "/usr/lib/python2.7/dist-packages/bzrlib/diff.py", line 1042, in _diff
  File "/usr/lib/python2.7/dist-packages/bzrlib/diff.py", line 522, in _diff_many
  File "/usr/lib/python2.7/dist-packages/bzrlib/diff.py", line 662, in diff
    old_path, new_path)
  File "/usr/lib/python2.7/dist-packages/bzrlib/diff.py", line 682, in diff_text
    from_text = _get_text(self.old_tree, from_file_id, from_path)
  File "/usr/lib/python2.7/dist-packages/bzrlib/diff.py", line 678, in _get_text
    return tree.get_file_lines(file_id, path)
  File "/usr/lib/python2.7/dist-packages/bzrlib/tree.py", line 322, in get_file_lines
    return osutils.split_lines(self.get_file_text(file_id, path))
  File "/usr/lib/python2.7/dist-packages/bzrlib/workingtree_4.py", line 1904, in get_file_text
    _, content = list(self.iter_files_bytes([(file_id, None)]))[0]
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 2224, in iter_files_bytes
    desired_files, absent):
  File "/usr/lib/python2.7/dist-packages/bzrlib/remote.py", line 2212, in _iter_files_bytes_rpc
    raise errors.UnexpectedSmartServerResponse(args)
UnexpectedSmartServerResponse: Could not understand response from smart server: ['x\x9c\xa5\x92\xcb\x0e\x820\x10E\xd7\xf2\x15\xee\r\xad\xa0\x10\x1f\xf1cJ[\xa1\x81>\x9c\xb6$\xb2\xf0\xdb\x85\x80Q0\x01\x13\x17\x93Lf\xe6\xde\x93\xde\x14a!\x8d\x06\x17Z']

3.767 return code 3
[22797] 2012-09-05 12:16:16.161 INFO: HPSS calls: 7 (0 vfs) SmartSSHClientMedium(bzr+ssh://<email address hidden>/)

Related branches

Jonathan Lange (jml) wrote :

When I tried to work-around by branching, making the change again, then pushing, I had to break a write lock taken out by me on the Launchpad branch.

Martin Packman (gz) on 2012-09-05
Changed in bzr:
importance: Undecided → High
status: New → Confirmed
Changed in launchpad:
status: New → Triaged
importance: Undecided → High
tags: added: bzr diff
John A Meinel (jameinel) on 2012-09-10
Changed in bzr:
assignee: nobody → John A Meinel (jameinel)
milestone: none → 2.5.2
Martin Packman (gz) on 2012-09-11
Changed in bzr:
status: Confirmed → Fix Released
Artem Sulimov (tsxv) on 2012-09-19
summary: "Could not understand response from smart server" when diffing
- lightweight checkout of LP branch
+ lightweight checkout of smart server branch
Artem Sulimov (tsxv) wrote :

Not only LP branch, just any checkout from branch managed by smart server.
  This sequence:
bzr co --lightweight bzr://[server]/[branch]
cd [branch]
[change any file]
bzr diff
  gives the same "Could not understand response from smart server" with bzr 2.5.1 and any combination of hosting platforms (Windows/Linux) for server and client.

Artem Sulimov (tsxv) wrote :

bzr diff -rlast:
gives proper results as bzr diff would.

William Grant (wgrant) on 2014-10-22
no longer affects: launchpad
To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

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