Push to SVN: exceptions.AttributeError: children

Bug #277369 reported by Eric P. Mangold
4
Affects Status Importance Assigned to Milestone
Bazaar Subversion Plugin
Fix Released
Medium
Jelmer Vernooij

Bug Description

When attemping to push a total of 15 revisions the following error occured. The SVN server did successfully receive the first six revisions before the error occured.

Subsequent runs of 'bzr push' fail with the same error before any revisions are pushed.

% bzr push
Using saved location: svn+ssh://svn.nunatak.com.au/svn/ganeserver/gane/trunk
bzr: ERROR: exceptions.AttributeError: children

Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 834, in run_bzr_catch_errors
    return run_bzr(argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 790, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 492, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.5/site-packages/bzrlib/builtins.py", line 840, in run
    stop_revision=revision_id)
  File "/usr/lib/python2.5/site-packages/bzrlib/decorators.py", line 127, in read_locked
    return unbound(self, *args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/branch.py", line 1556, in push
    _override_hook_source_branch=_override_hook_source_branch)
  File "/usr/lib/python2.5/site-packages/bzrlib/branch.py", line 1598, in _push_with_bound_branches
    result = self._basic_push(target, overwrite, stop_revision)
  File "/usr/lib/python2.5/site-packages/bzrlib/branch.py", line 1617, in _basic_push
    target.update_revisions(self, stop_revision)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/branch.py", line 367, in update_revisions
    push(self, other, revid)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 701, in push
    builder.commit(rev.message)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 482, in commit
    branch_batons[-1])
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 340, in _dir_process
    self._dir_process(new_child_path, child_ie.file_id, child_baton)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 340, in _dir_process
    self._dir_process(new_child_path, child_ie.file_id, child_baton)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 340, in _dir_process
    self._dir_process(new_child_path, child_ie.file_id, child_baton)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 340, in _dir_process
    self._dir_process(new_child_path, child_ie.file_id, child_baton)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 213, in _dir_process
    for child_name in self.old_inv[file_id].children:
AttributeError: children

bzr 1.3.1 on python 2.5.2.final.0 (linux2)
arguments: ['/usr/bin/bzr', 'push']
encoding: 'UTF-8', fsenc: 'UTF-8', lang: 'en_US.UTF-8'
plugins:
  bzr_interactive /home/teratorn/.bazaar/plugins/bzr_interactive [1.2.0]
  bzr_vimdiff /home/teratorn/.bazaar/plugins/bzr_vimdiff [unknown]
  bzrtools /usr/lib/python2.5/site-packages/bzrlib/plugins/bzrtools [1.3.0]
  gtk /usr/lib/python2.5/site-packages/bzrlib/plugins/gtk [0.93.0]
  launchpad /usr/lib/python2.5/site-packages/bzrlib/plugins/launchpad [unknown]
  svn /usr/lib/python2.5/site-packages/bzrlib/plugins/svn [0.4.9]
*** 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.

Related branches

Revision history for this message
Jelmer Vernooij (jelmer) wrote :

This bug has been fixed since, IIRC in 0.4.11.

Changed in bzr:
status: New → Fix Released
Revision history for this message
Eric P. Mangold (teratorn) wrote :
Download full text (3.9 KiB)

I just upgraded to the latest BZR and BZR-SVN releases as you can see by the version numbers displayed below. Still the same bug.

% bzr push
Using saved push location: svn+ssh://svn.nunatak.com.au/svn/ganeserver/gane/trunk
bzr: ERROR: exceptions.AttributeError: children

Traceback (most recent call last):
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 857, in run_bzr_catch_errors
    return run_bzr(argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 797, in run_bzr
    ret = run(*run_argv)
  File "/usr/lib/python2.5/site-packages/bzrlib/commands.py", line 499, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/usr/lib/python2.5/site-packages/bzrlib/builtins.py", line 815, in run
    use_existing_dir=use_existing_dir)
  File "/usr/lib/python2.5/site-packages/bzrlib/push.py", line 162, in _show_push_branch
    stop_revision=revision_id)
  File "/usr/lib/python2.5/site-packages/bzrlib/decorators.py", line 138, in read_locked
    result = unbound(self, *args, **kwargs)
  File "/usr/lib/python2.5/site-packages/bzrlib/branch.py", line 1745, in push
    _override_hook_source_branch=_override_hook_source_branch)
  File "/usr/lib/python2.5/site-packages/bzrlib/branch.py", line 1787, in _push_with_bound_branches
    result = self._basic_push(target, overwrite, stop_revision)
  File "/usr/lib/python2.5/site-packages/bzrlib/branch.py", line 1810, in _basic_push
    graph=graph)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/branch.py", line 430, in update_revisions
    _push_merged)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/branch.py", line 442, in _push_missing_revisions
    push(my_graph, self, other.repository, revid)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 791, in push
    rev, push_metadata=push_metadata)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 750, in push_revision_tree
    revid = builder.commit(rev.message)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 525, in commit
    branch_editors[-1])
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 364, in _dir_process
    self._dir_process(new_child_path, child_ie.file_id, child_editor)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 364, in _dir_process
    self._dir_process(new_child_path, child_ie.file_id, child_editor)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 364, in _dir_process
    self._dir_process(new_child_path, child_ie.file_id, child_editor)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 364, in _dir_process
    self._dir_process(new_child_path, child_ie.file_id, child_editor)
  File "/usr/lib/python2.5/site-packages/bzrlib/plugins/svn/commit.py", line 244, in _dir_process
    for child_name in self.old_inv[file_id].children:
AttributeError: children

bzr 1.7.1 on python 2.5.2 (linux2)
arguments: ['/usr/bin/bzr', 'push']
encoding: 'UTF-8', f...

Read more...

Revision history for this message
Eric P. Mangold (teratorn) wrote :

So after a little digging I've confirmed that this is still a new bug.

You can reproduce quite simply by creating a local SVN repo with 'svnadmin create', then pulling from it with bzr-svn.

Then add a file to the checkout, add it to bzr and commit/push. now change the file to a directory, add a file inside it, and add/commit this to bzr. When it tries to push it will blow up.

SVN doesn't seem to allow any way to change a file to a dir.. you have to remove it first, then add a directory in a separate revision.

Changed in bzr-svn:
status: Fix Released → New
Revision history for this message
Jelmer Vernooij (jelmer) wrote :

Fixed in the 0.4 branch.

Changed in bzr-svn:
assignee: nobody → jelmer
status: New → Fix Committed
importance: Undecided → Medium
milestone: none → 0.4.14
Jelmer Vernooij (jelmer)
Changed in bzr-svn:
status: Fix Committed → Fix Released
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.