2a format permits fetching tree-reference entries

Bug #854964 reported by Aaron Bentley
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar
Confirmed
Medium
Unassigned

Bug Description

2a does not support subtrees, but does permit fetching revisions containing tree-reference entries.

This works from development-subtree format and pack-0.92-subtree format.

$ bzr init target
Created a standalone tree (format: 2a)
$ bzr pull -d target lp:~ebbe/+junk/game
Doing on-the-fly conversion from RemoteRepositoryFormat(_network_name='Bazaar development format 2 with subtree support (needs bzr.dev from before 1.8)\n') to RepositoryFormat2a().
This may take some time. Upgrade the repositories to the same format for better performance.

apport is set to ignore crashes in this version of bzr.
bzr: ERROR: exceptions.AssertionError: Unknown kind 'tree-reference'

Traceback (most recent call last):
  File "/home/abentley/hacking/bzr/dev/bzrlib/commands.py", line 923, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/home/abentley/hacking/bzr/dev/bzrlib/commands.py", line 1123, in run_bzr
    ret = run(*run_argv)
  File "/home/abentley/hacking/bzr/dev/bzrlib/commands.py", line 677, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/home/abentley/hacking/bzr/dev/bzrlib/commands.py", line 699, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/home/abentley/hacking/bzr/dev/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/home/abentley/hacking/bzr/dev/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/home/abentley/hacking/bzr/dev/bzrlib/builtins.py", line 1080, in run
    local=local, show_base=show_base)
  File "/home/abentley/hacking/bzr/dev/bzrlib/decorators.py", line 217, in write_locked
    result = unbound(self, *args, **kwargs)
  File "/home/abentley/hacking/bzr/dev/bzrlib/workingtree.py", line 1004, in pull
    show_base=show_base)
  File "/home/abentley/hacking/bzr/dev/bzrlib/merge.py", line 1998, in merge_inner
    return merger.do_merge()
  File "/home/abentley/hacking/bzr/dev/bzrlib/merge.py", line 712, in do_merge
    merge = operation.run_simple()
  File "/home/abentley/hacking/bzr/dev/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/home/abentley/hacking/bzr/dev/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/home/abentley/hacking/bzr/dev/bzrlib/merge.py", line 683, in _do_merge_to
    merge.do_merge()
  File "/home/abentley/hacking/bzr/dev/bzrlib/merge.py", line 822, in do_merge
    operation.run()
  File "/home/abentley/hacking/bzr/dev/bzrlib/cleanup.py", line 131, in run
    self.cleanups, self.func, self, *args, **kwargs)
  File "/home/abentley/hacking/bzr/dev/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/home/abentley/hacking/bzr/dev/bzrlib/merge.py", line 827, in _do_merge
    self._compute_transform()
  File "/home/abentley/hacking/bzr/dev/bzrlib/merge.py", line 865, in _compute_transform
    file_status = self._do_merge_contents(file_id)
  File "/home/abentley/hacking/bzr/dev/bzrlib/merge.py", line 1387, in _do_merge_contents
    hook_status, lines = hook.merge_contents(params)
  File "/home/abentley/hacking/bzr/dev/bzrlib/merge.py", line 1468, in merge_contents
    return self._default_other_winner_merge(merge_hook_params)
  File "/home/abentley/hacking/bzr/dev/bzrlib/merge.py", line 1451, in _default_other_winner_merge
    filter_tree_path=filter_tree_path)
  File "/home/abentley/hacking/bzr/dev/bzrlib/transform.py", line 2815, in create_from_tree
    raise AssertionError('Unknown kind %r' % kind)
AssertionError: Unknown kind 'tree-reference'

bzr 2.5.0dev2 on python 2.7.2 (Linux-3.0.0-11-generic-x86_64-with-
    Ubuntu-11.10-oneiric)
arguments: ['/home/abentley/bin/bzr', 'pull', '-d', 'target',
    'lp:~ebbe/+junk/game']
plugins: arch[unknown], bash_completion[2.5.0dev2], builder[unknown],
    bzrtools[2.4.0], changelog_merge[2.5.0dev2], difftacular[unknown],
    faultline[unknown], grep[0.5.0dev], gtk[0.99.1], launchpad[2.5.0dev2],
    loom[2.2.1dev], lpreview_body[unknown], netrc_credential_store[2.5.0dev2],
    news_merge[2.5.0dev2], pipeline[1.1.0], pqm[1.4.0dev], svn[1.1.1dev],
    trigger_scan[unknown], weave_fmt[2.5.0dev2]
encoding: 'UTF-8', fsenc: 'UTF-8', lang: 'en_CA.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.
$ bzr missing -d target lp:~ebbe/+junk/game
Branches are up to date.

Martin Pool (mbp)
Changed in bzr:
status: New → Confirmed
importance: Undecided → Medium
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.