Comment 1 for bug 653307

Revision history for this message
James Westby (james-w) wrote :

Branching to my local box also shows the same issue.

Checking the branches directly on LP over the smart server gives:

Traceback (most recent call last):
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/commands.py", line 911, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/commands.py", line 1111, in run_bzr
    ret = run(*run_argv)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/commands.py", line 689, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/commands.py", line 704, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/builtins.py", line 3263, in run
    check_dwim(path, verbose, do_branch=branch, do_repo=repo, do_tree=tree)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/check.py", line 452, in check_dwim
    check_repo=do_repo)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/decorators.py", line 140, in read_locked
    result = unbound(self, *args, **kwargs)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/remote.py", line 1585, in check
    callback_refs=callback_refs, check_repo=check_repo)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/decorators.py", line 140, in read_locked
    result = unbound(self, *args, **kwargs)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/repository.py", line 2777, in check
    check_repo=check_repo)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/repository.py", line 2781, in _check
    result.check(callback_refs)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/check.py", line 102, in check
    self.check_weaves()
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/check.py", line 292, in check_weaves
    self._check_weaves(storebar)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/check.py", line 308, in _check_weaves
    self.repository.texts)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/repository.py", line 4208, in check_file_version_parents
    return self._check_file_version_parents(texts, progress_bar)
  File "/home/jw2328/devel/bzr/bzr.dev/bzrlib/repository.py", line 4229, in _check_file_version_parents
    knit_parents = parent_map[key]
KeyError: ('control-20090513234116-5pygawx43okof7y3-214', '<email address hidden>')

for 4 out of 4 of the branches I tried.

All of the file ids of those 4 have been something inside debian/, which might give a clue.

Certainly smells of corruption to me, but it's too systematic to be random.

All of the branches were pushed to LP without issue, and then failed when branching them
again. This could be an asymmetry in push/pull, code changes over time, or perhaps these
branches were upgraded to 2a on the server.

Bumped to critical, as this is an unknown source of branch corruption.

Thanks,

James