"maximum recursion depth exceeded while calling a Python object" on self-stacked branch
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Confirmed
|
High
|
Unassigned | ||
Launchpad itself |
Triaged
|
High
|
Unassigned |
Bug Description
I have a local branch and I wanted to compare it against a branch hosted on Launchpad to make sure I could delete the local copy. IIRC the local branch was created yesterday via "bzr branch lp:hedera thunderbird3". At that point lp:hedera should have been pointing to the thunderbird3 series, which was backed by the branch lp:~jamestait/hedera/thunderbird3. I have since moved some things around:
I renamed the trunk series, pointing to lp:~jamestait/hedera/trunk to thunderbird2
I renamed the branch lp:~jamestait/hedera/trunk to thunderbird2
I renamed the thunderbird3 series, pointing to lp:~jamestait/hedera/thunderbird3, to trunk
I renamed the branch lp:~jamestait/hedera/thunderbird3 to trunk
Development focus on the project is trunk, lp:hedera points to lp:~jamestait/hedera/trunk.
Some time in the dim and distant past, there was some problem with branch stacking on this project. Some nice person in #launchpad (IIRC) fixed that, but I don't know how.
Traceback (most recent call last):
File "/usr/lib/
return the_callable(*args, **kwargs)
File "/usr/lib/
ret = run(*run_argv)
File "/usr/lib/
return self.run(
File "/usr/lib/
return self._operation
File "/usr/lib/
self.cleanups, self.func, *args, **kwargs)
File "/usr/lib/
result = func(*args, **kwargs)
File "/usr/lib/
result = func(*args, **kwargs)
File "/usr/lib/
file_list, revision, old, new, self.add_cleanup, apply_view=True)
File "/usr/lib/
bzrdir.
File "/usr/lib/
tree, branch = bzrdir.
File "/usr/lib/
return None, self.open_
File "/usr/lib/
setup_
File "/usr/lib/
self.
File "/usr/lib/
self.
File "/usr/lib/
repo = self._get_
File "/usr/lib/
possible_
File "/usr/lib/
return control.
File "/usr/lib/
[etc...]
bzr 2.2.1 on python 2.6.6 (Linux-
arguments: ['/usr/bin/bzr', 'diff', '--old=lp:hedera']
tags: | added: branch-scanner codehosting-ssh |
Changed in launchpad: | |
status: | New → Triaged |
importance: | Undecided → High |
I can reproduce this atm simply by doing "bzr branch lp:hedera".
The problem is that somehow the branch is configured to be stacked on itself. lp:hedera resolves to lp:~jamestait/hedera/trunk, and its branch.conf says "stacked_ on_location = /~jamestait/ hedera/ trunk"
So there's (at least) two bugs:
1. the infinite recursion when bzr attempts to open this branch. bzr ought to detect the loop and report the problem quickly and helpfully, rather than the lengthy traceback.
2. that bzr and/or Launchpad allowed the branch to get into this broken state in the first place (assuming no-one hand-edited the branch.conf).