** Description changed: Workarounds ---------------- If you can write to the branch: - Use the fixer script attached to this bug to repair the affected branch (by fetching the missing parts from the stacked-on repository). Run it as 'fix-branch.py bzr+ssh://bazaar.launchpad.net/~user/project/branch'. You must have write access to the branch to do this. - Alternatively just delete the affected branch and repush it with a fixed client (1.14rc2 or newer) If you cannot write to the branch: - Use non-smart URLs to access an affected branch, e.g. sftp:// or nosmart+bzr+ssh://. This works because the client can access the stacked-on repository, and the missing data is present there, but will be slower as it disables streaming fetch. Details ------- When bzr introduced stacking the data pushed to a stacking branch was too minimal. This lack was discovered when streaming fetch from stacked branches was enabled. The server needs to be able to generate a delta of the data in its graph to decide what to send the client, and the ACF record sent to the client is an indicator that it was failing to do this correctly. Resolution ---------- - Use bzr.dev newer than r4037 (or bzr 1.15 or newer) on the server and + Use bzr.dev newer than r4307 (or bzr 1.15 or newer) on the server and bzr 1.13 or newer as clients with bzr+ssh or bzr+http urls. If the server cannot run 1.15, use bzr 1.13.2 or 1.14rc2 or newer on the client. Do not use older bzr versions. bzr.dev and 1.14rc2 have been fixed on the client side to always include enough data, and bzr.dev (and thus bzr 1.15) include a fix for the server to make bzr 1.13 clients that use the Repository.insert_stream* HPSS verbs send the missing records. (See also bug 368418 about the server fix in bzr.dev) Symptom ------- When pulling affected branches, you get a traceback like this: bzr: ERROR: bzrlib.errors.ErrorFromSmartServer: Error received from smart server: ('error', "'AbsentContentFactory' object has no attribute 'get_bytes_as'") Traceback (most recent call last): ... File "/Library/Python/2.6/site-packages/bzrlib/decorators.py", line 192, in write_locked result = unbound(self, *args, **kwargs) File "/Library/Python/2.6/site-packages/bzrlib/repository.py", line 2991, in fetch pb=pb, find_ghosts=find_ghosts) File "/Library/Python/2.6/site-packages/bzrlib/fetch.py", line 84, in __init__ self.__fetch() File "/Library/Python/2.6/site-packages/bzrlib/fetch.py", line 110, in __fetch self._fetch_everything_for_search(search) File "/Library/Python/2.6/site-packages/bzrlib/fetch.py", line 138, in _fetch_everything_for_search stream, from_format, []) File "/Library/Python/2.6/site-packages/bzrlib/repository.py", line 3791, in insert_stream return self._locked_insert_stream(stream, src_format) File "/Library/Python/2.6/site-packages/bzrlib/repository.py", line 3819, in _locked_insert_stream for substream_type, substream in stream: File "/Library/Python/2.6/site-packages/bzrlib/remote.py", line 1709, in missing_parents_chain for kind, substream in stream: File "/Library/Python/2.6/site-packages/bzrlib/smart/repository.py", line 447, in record_stream for bytes in byte_stream: File "/Library/Python/2.6/site-packages/bzrlib/smart/message.py", line 336, in read_streamed_body _translate_error(self._body_error_args) File "/Library/Python/2.6/site-packages/bzrlib/smart/message.py", line 355, in _translate_error raise errors.ErrorFromSmartServer(error_tuple) ErrorFromSmartServer: Error received from smart server: ('error', "'AbsentContentFactory' object has no attribute 'get_bytes_as'")
-- ErrorFromSmartServer - AbsentContentFactory object has no attribute 'get_bytes_as' exception while pulling from Launchpad https://bugs.launchpad.net/bugs/354036 You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs