Comment 7 for bug 660935

Revision history for this message
Glenn Morris (rgm+lp) wrote :

I have what looks like the same problem. The key to reproducing it seems to be subdirectories.
The following example crashes bzr 2.2.2 for me on Debian testing and RHEL 5.5:

mkdir test1
cd test1
mkdir src
touch 1 src/unexalpha.c
bzr init
bzr add
bzr commit -m "commit1"
cd ../
bzr branch test1 test2
cd test2
echo "test2" >> src/unexalpha.c
bzr commit -m "change"
cd ../test1
bzr remove src/unexalpha.c
bzr commit -m "remove"
bzr merge ../test2
bzr resolve src/unexalpha.c --take-this

If "unexalpha.c" is in the top-level directory, not src/, it works fine.

bzr: ERROR: bzrlib.errors.InvalidEntryName: Invalid entry name: src/unexalpha.c

Traceback (most recent call last):
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/commands.py", line 912, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/commands.py", line 1112, in run_bzr
    ret = run(*run_argv)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/commands.py", line 690, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/commands.py", line 705, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/conflicts.py", line 160, in run
    resolve(tree, file_list, action=action)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/conflicts.py", line 189, in resolve
    conflict._do(action, tree)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/conflicts.py", line 415, in _do
    meth(tree)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/conflicts.py", line 597, in action_take_this
    self._resolve_with_cleanups(tree, 'OTHER')
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/conflicts.py", line 444, in _resolve_with_cleanups
    op.run_simple(tt, *args, **kwargs)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/conflicts.py", line 594, in _resolve
    tt.apply()
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/transform.py", line 1554, in apply
    inventory_delta = self._generate_inventory_delta()
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/transform.py", line 1630, in _generate_inventory_delta
    parent_file_id, file_id)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/inventory.py", line 2317, in make_entry
    return factory(file_id, name, parent_id)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/inventory.py", line 537, in __init__
    super(InventoryFile, self).__init__(file_id, name, parent_id)
  File "/usr/local/lib/python2.6/dist-packages/bzrlib/inventory.py", line 216, in __init__
    raise errors.InvalidEntryName(name=name)
InvalidEntryName: Invalid entry name: src/unexalpha.c

bzr 2.2.2 on python 2.6.6 (Linux-2.6.32-5-686-i686-with-debian-6.0)
arguments: ['/usr/local/bin/bzr', 'resolve', 'src/unexalpha.c', '--take-this']
encoding: 'ISO-8859-1', fsenc: 'ISO-8859-1', lang: 'en_US'
plugins:
  bash_completion /usr/local/lib/python2.6/dist-packages/bzrlib/plugins/bash_completion [2.2.2]
  bzrtools /usr/lib/python2.6/dist-packages/bzrlib/plugins/bzrtools [2.1.0]
  gtk /usr/lib/python2.6/dist-packages/bzrlib/plugins/gtk [0.99.0dev1]
  launchpad /usr/local/lib/python2.6/dist-packages/bzrlib/plugins/launchpad [2.2.2]
  loom /usr/lib/python2.6/dist-packages/bzrlib/plugins/loom [2.1.0]
  netrc_credential_store /usr/local/lib/python2.6/dist-packages/bzrlib/plugins/netrc_credential_store [2.2.2]
  news_merge /usr/local/lib/python2.6/dist-packages/bzrlib/plugins/news_merge [2.2.2]
  rewrite /usr/lib/python2.6/dist-packages/bzrlib/plugins/rewrite [0.6.0]
  search /usr/lib/python2.6/dist-packages/bzrlib/plugins/search [1.7.0dev]
  svn /usr/lib/python2.6/dist-packages/bzrlib/plugins/svn [1.0.3]

*** Bazaar has encountered an internal error.