[Pkg-bazaar-maint] Bug#582210: bzrtools: shelve crashes with "Tree transform is malformed" when renamed file already exists

Ben Finney ben+debian at benfinney.id.au
Wed May 19 06:26:36 UTC 2010


Package: bzrtools
Version: 2.1.0-2
Severity: normal

When ‘bzr shelve’ attempts to shelve a rename, but the original
filename already exists, it gives an unhelpful error message:

=====
$ bzr init foo
Created a standalone tree (format: 2a)                                                                                                                                                                           
$ cd foo/
$ touch spam
$ bzr add
adding spam
$ bzr commit --message "Initial commit of foo project."
Committing to: /home/bignose/Projects/foo/                                                                                                                                                                       
added spam
Committed revision 1.                                                                                                                                                                                            

$ bzr mv spam beans
spam => beans
$ touch spam
$ bzr shelve --all
Selected changes:                         
R   beans => spam
bzr: ERROR: Tree transform is malformed [('duplicate', 'new-1', 'new-2', u'spam')]
=====

The relevant log session:

=====
Wed 2010-05-19 16:24:16 +1000
0.054  bazaar version: 2.1.1
0.055  bzr arguments: [u'shelve', u'--all']
0.077  looking for plugins in /home/bignose/.bazaar/plugins
0.078  looking for plugins in /usr/lib/python2.5/site-packages/bzrlib/plugins
0.286  encoding stdout as sys.stdout encoding 'UTF-8'
0.340  opening working tree '/home/bignose/Projects/foo'
[25173] 2010-05-19 16:24:17.002 INFO: Selected changes:
[25173] 2010-05-19 16:24:17.003 INFO: R   beans => spam
0.378  Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 853, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 1055, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 661, in run_argv_aliases
    return self.run_direct(**all_cmd_args)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 665, in run_direct
    return self._operation.run_simple(*args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/cleanup.py", line 122, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/cleanup.py", line 156, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/builtins.py", line 5770, in run
    shelver.run()
  File "/usr/lib/python2.5/site-packages/bzrlib/shelf_ui.py", line 213, in run
    self.message)
  File "/usr/lib/python2.5/site-packages/bzrlib/shelf.py", line 377, in shelve_changes
    creator.transform()
  File "/usr/lib/python2.5/site-packages/bzrlib/shelf.py", line 251, in transform
    self.work_transform.apply()
  File "/usr/lib/python2.5/site-packages/bzrlib/transform.py", line 1521, in apply
    self._check_malformed()
  File "/usr/lib/python2.5/site-packages/bzrlib/transform.py", line 510, in _check_malformed
    raise MalformedTransform(conflicts=conflicts)
MalformedTransform: Tree transform is malformed [('duplicate', 'new-1', 'new-2', u'spam')]

0.379  Transferred: 0KiB (0.0K/s r:0K w:0K)
0.379  return code 3
=====

While I'm not sure what the correct behaviour should be in this case,
this error is unhelpful in fixing the problem. Perhaps Bazaar could
treat this as a conflict.


-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (990, 'testing'), (900, 'stable')
Architecture: powerpc (ppc64)

Kernel: Linux 2.6.32-3-powerpc64 (SMP w/2 CPU cores)
Locale: LANG=en_AU.UTF-8, LC_CTYPE=en_AU.UTF-8 (charmap=UTF-8) (ignored: LC_ALL set to en_AU.UTF-8)
Shell: /bin/sh linked to /bin/dash

Versions of packages bzrtools depends on:
ii  bzr                          2.1.1-1     easy to use distributed version co
ii  patch                        2.6-2       Apply a diff file to an original
ii  python                       2.5.4-9     An interactive high-level object-o
ii  python-central               0.6.14+nmu2 register and build utility for Pyt

Versions of packages bzrtools recommends:
ii  rsync                         3.0.7-2    fast remote file copy program (lik

Versions of packages bzrtools suggests:
ii  graphviz                      2.26.3-4   rich set of graph drawing tools
ii  librsvg2-bin                  2.26.3-1   command-line and graphical viewers

-- no debconf information





More information about the Pkg-bazaar-maint mailing list