Comment 18 for bug 304134

Revision history for this message
Wesley J. Landaker (wjl) wrote : Re: KeyError when updating lightweight bzr-svn checkout

I just wanted to point out two other aspects of this bug:

1) Since we got to the bottom of this, the summary is actually misleading. This doesn't just affect lightweight checkouts, but also any other bzr operation on a subtree with the property demonstrated above. This prevents branch, checkout on a subtree where this already exists, and bzr pull if it happens after-the-fact.

2) This cannot always be worked around. In my case, I was able to operate on a different subtree (since it was a lightweight checkout), but I've found a case much more insidious. We have some repositories that used to use /some/path/project and later switched to using /some/path/{trunk,tags,branches}/project. But since now trunk contains directories that used to be peers, and many of them had simultaneous modifications[*], now it's impossible to use bzr-svn on trunk, which pretty much rules out it's use entirely.

Anyway, just a few more bug conditions to consider. I'm looking forward to this fix in 0.5 because it's really a blocker for case #2. Please let me know if you have trouble reproducing or need more test cases. (I thought of trying to fix it myself, but I'm not sure where to start because it appears that the root cause is somewhat removed from where the problem is detected.)

[*] I'm not entirely sure if that's REQUIRED to make this bug happen or not, but it's a property that's true in the reproduction recipe I posted.