Activity log for bug #304134

Date Who What changed Old value New value Message
2008-12-01 20:23:45 Wesley J. Landaker bug added bug
2008-12-09 15:50:38 Wesley J. Landaker bug added attachment 'bzr-svn-304134.tar.bz2' (bzr-svn-304134.tar.bz2)
2008-12-09 16:01:03 Jelmer Vernooij bzr-svn: status New Triaged
2008-12-09 16:01:03 Jelmer Vernooij bzr-svn: importance Undecided Medium
2008-12-09 16:01:03 Jelmer Vernooij bzr-svn: statusexplanation
2008-12-09 16:01:03 Jelmer Vernooij bzr-svn: milestone 0.5.0
2009-01-14 15:45:48 Wesley J. Landaker description I've reported a KeyError in a similar scenerio before, but this is failing differently, with a different checkout, and with a newer version of bzr. This is with bzr 1.9 and bzr-svn 0.4.15 (both from intrepid packages). I have a working svn checkout, but when I try to use bzr on it (even if I'm just doing update and it's already up-to-date), I get a KeyError. $ bzr up bzr: ERROR: exceptions.KeyError: 'linux_driver/xilinxDriver.c' Traceback (most recent call last): File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 893, in run_bzr_catch_errors return run_bzr(argv) File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 839, in run_bzr ret = run(*run_argv) File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 539, in run_argv_aliases return self.run(**all_cmd_args) File "/usr/lib/python2.5/site-packages/bzrlib/builtins.py", line 1126, in run tree = WorkingTree.open_containing(dir)[0] File "/usr/lib/python2.5/site-packages/bzrlib/workingtree.py", line 327, in open_containing return control.open_workingtree(), relpath File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/workingtree.py", line 812, in open_workingtree return SvnWorkingTree(self, self.local_path, self.open_branch()) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/workingtree.py", line 98, in __init__ self.base_tree = SvnBasisTree(self) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/tree.py", line 231, in __init__ workingtree.branch.mapping) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/repository.py", line 400, in get_fileid_map return self.fileid_map.get_map(self.uuid, revnum, path, mapping) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/fileids.py", line 294, in get_map self.actual.update_map(map, revid, idmap, changes) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/fileids.py", line 191, in update_map delta[p] = map[p][0] KeyError: 'linux_driver/xilinxDriver.c' bzr 1.9 on python 2.5.2 (linux2) arguments: ['/usr/bin/bzr', 'up'] encoding: 'UTF-8', fsenc: 'UTF-8', lang: 'en_US.UTF-8' plugins: bisect /home/wjlanda/.bazaar/plugins/bisect [1.1.0pre0] bzrtools /usr/lib/python2.5/site-packages/bzrlib/plugins/bzrtools [1.9.1] cvsps_import /usr/lib/python2.5/site-packages/bzrlib/plugins/cvsps_import [unknown] gtk /usr/lib/python2.5/site-packages/bzrlib/plugins/gtk [0.96.0dev1] launchpad /usr/lib/python2.5/site-packages/bzrlib/plugins/launchpad [unknown] loom /usr/lib/python2.5/site-packages/bzrlib/plugins/loom [1.4.0dev0] rebase /usr/lib/python2.5/site-packages/bzrlib/plugins/rebase [0.4.1] search /usr/lib/python2.5/site-packages/bzrlib/plugins/search [1.6.0dev3] stats /usr/lib/python2.5/site-packages/bzrlib/plugins/stats [unknown] svn /usr/lib/python2.5/site-packages/bzrlib/plugins/svn [0.4.15dev0] upload /usr/lib/python2.5/site-packages/bzrlib/plugins/upload [0.1.0] *** Bazaar has encountered an internal error. Please report a bug at https://bugs.launchpad.net/bzr/+filebug including this traceback, and a description of what you were doing when the error occurred. The only helpful thing I can think of is that linux_driver/xilinxDriver.c does not currently exist with that name, as it was renamed 100-200 revisions ago. If I use bzr-svn in the actual linux_driver directory that corresponds to this error message, it works fine. It also works fine in any other subdirectory of the directory in the same svn checkout where this is failing. So this seems to be some kind of corner case. UPDATE: This was titled "KeyError when updating lightweight bzr-svn checkout". I retitled it given the discoveries summarized in later comments. Essentially, bzr-svn isn't handling the case where you are working on a subtree that contains a directory that used to be a peer and was copied/moved with modifications. Here is the simplest reproduction recipe from my last comment: svnadmin create repos svn co file://`pwd`/repos svn-wc cd svn-wc/ svn mkdir parent svn commit -m "Added parent." svn mkdir peer svn commit -m "Added peer" echo "A" > peer/file svn add peer/file svn commit -m "Added file" svn up echo "B" > peer/file svn mv peer/ parent/child svn commit -m "Made peer a child, with mods." svn up bzr up # works cd parent/ svn up bzr up # crashes - - - Original Report - - - I've reported a KeyError in a similar scenerio before, but this is failing differently, with a different checkout, and with a newer version of bzr. This is with bzr 1.9 and bzr-svn 0.4.15 (both from intrepid packages). I have a working svn checkout, but when I try to use bzr on it (even if I'm just doing update and it's already up-to-date), I get a KeyError. $ bzr up bzr: ERROR: exceptions.KeyError: 'linux_driver/xilinxDriver.c' Traceback (most recent call last): File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 893, in run_bzr_catch_errors return run_bzr(argv) File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 839, in run_bzr ret = run(*run_argv) File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 539, in run_argv_aliases return self.run(**all_cmd_args) File "/usr/lib/python2.5/site-packages/bzrlib/builtins.py", line 1126, in run tree = WorkingTree.open_containing(dir)[0] File "/usr/lib/python2.5/site-packages/bzrlib/workingtree.py", line 327, in open_containing return control.open_workingtree(), relpath File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/workingtree.py", line 812, in open_workingtree return SvnWorkingTree(self, self.local_path, self.open_branch()) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/workingtree.py", line 98, in __init__ self.base_tree = SvnBasisTree(self) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/tree.py", line 231, in __init__ workingtree.branch.mapping) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/repository.py", line 400, in get_fileid_map return self.fileid_map.get_map(self.uuid, revnum, path, mapping) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/fileids.py", line 294, in get_map self.actual.update_map(map, revid, idmap, changes) File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/fileids.py", line 191, in update_map delta[p] = map[p][0] KeyError: 'linux_driver/xilinxDriver.c' bzr 1.9 on python 2.5.2 (linux2) arguments: ['/usr/bin/bzr', 'up'] encoding: 'UTF-8', fsenc: 'UTF-8', lang: 'en_US.UTF-8' plugins: bisect /home/wjlanda/.bazaar/plugins/bisect [1.1.0pre0] bzrtools /usr/lib/python2.5/site-packages/bzrlib/plugins/bzrtools [1.9.1] cvsps_import /usr/lib/python2.5/site-packages/bzrlib/plugins/cvsps_import [unknown] gtk /usr/lib/python2.5/site-packages/bzrlib/plugins/gtk [0.96.0dev1] launchpad /usr/lib/python2.5/site-packages/bzrlib/plugins/launchpad [unknown] loom /usr/lib/python2.5/site-packages/bzrlib/plugins/loom [1.4.0dev0] rebase /usr/lib/python2.5/site-packages/bzrlib/plugins/rebase [0.4.1] search /usr/lib/python2.5/site-packages/bzrlib/plugins/search [1.6.0dev3] stats /usr/lib/python2.5/site-packages/bzrlib/plugins/stats [unknown] svn /usr/lib/python2.5/site-packages/bzrlib/plugins/svn [0.4.15dev0] upload /usr/lib/python2.5/site-packages/bzrlib/plugins/upload [0.1.0] *** Bazaar has encountered an internal error. Please report a bug at https://bugs.launchpad.net/bzr/+filebug including this traceback, and a description of what you were doing when the error occurred. The only helpful thing I can think of is that linux_driver/xilinxDriver.c does not currently exist with that name, as it was renamed 100-200 revisions ago. If I use bzr-svn in the actual linux_driver directory that corresponds to this error message, it works fine. It also works fine in any other subdirectory of the directory in the same svn checkout where this is failing. So this seems to be some kind of corner case.
2009-01-14 15:45:48 Wesley J. Landaker title KeyError when updating lightweight bzr-svn checkout Crash on subtree where child dir used to be a peer and was copied with mods
2009-01-18 20:14:21 Jelmer Vernooij bzr-svn: status Triaged Fix Released
2009-09-12 20:19:25 Jelmer Vernooij bzr-svn: assignee Jelmer Vernooij (jelmer)