bzr-svn fails to branch repo with existing bzr-svn metadata (AssertionError: 917 != 922)

Bug #892043 reported by Art O Cathain
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Bazaar Subversion Plugin
New
Undecided
Unassigned

Bug Description

I'm trying to check out a SVN repository that I previously used bzr-svn with (so it has existing bzr-svn metadata in it).

Possibly some corruption of the repository metadata?

art@art-debian-1:~/src$ ~/src/bzr-2.4.2/bzr co http://localhost:17280/repos/nos/trunk/ nos-trunk-bzr
HTTP localhost:17280, Realm: [snip]
HTTP pe1@localhost:17280, Realm: [snip]
Initialising Subversion metadata cache in /home/art/.bazaar/svn-cache/b7e603d3-bd60-4ffc-a040-4c979f3b195b.
inconsistent details in skipped record: ('classpath-20111103160810-5aqv69vj88pp5ewq-38', '<email address hidden>') ('12181935 278 0 517', ((),)) ('5747754 278 0 517', ((('classpath-20111103160810-5aqv69vj88pp5ewq-38', '<email address hidden>'),),))
inconsistent details in skipped record: ('project-20111103160810-5aqv69vj88pp5ewq-39', '<email address hidden>') ('12182213 253 0 567', ((),)) ('5748032 253 0 567', ((('project-20111103160810-5aqv69vj88pp5ewq-39', '<email address hidden>'),),))
inconsistent details in skipped record: ('org.maven.ide.eclips-20111103160810-5aqv69vj88pp5ewq-89', '<email address hidden>') ('12207168 200 0 252', ((),)) ('5767827 200 0 252', ((('org.maven.ide.eclips-20111103160810-5aqv69vj88pp5ewq-89', '<email address hidden>'),),))
bzr: ERROR: exceptions.AssertionError: 917 != 922

Traceback (most recent call last):
  File "/home/art/src/bzr-2.4.2/bzrlib/commands.py", line 946, in exception_to_return_code
    return the_callable(*args, **kwargs)
  File "/home/art/src/bzr-2.4.2/bzrlib/commands.py", line 1150, in run_bzr
    ret = run(*run_argv)
  File "/home/art/src/bzr-2.4.2/bzrlib/commands.py", line 699, in run_argv_aliases
    return self.run(**all_cmd_args)
  File "/home/art/src/bzr-2.4.2/bzrlib/commands.py", line 721, in run
    return self._operation.run_simple(*args, **kwargs)
  File "/home/art/src/bzr-2.4.2/bzrlib/cleanup.py", line 135, in run_simple
    self.cleanups, self.func, *args, **kwargs)
  File "/home/art/src/bzr-2.4.2/bzrlib/cleanup.py", line 165, in _do_with_cleanups
    result = func(*args, **kwargs)
  File "/home/art/src/bzr-2.4.2/bzrlib/builtins.py", line 1408, in run
    accelerator_tree, hardlink)
  File "/home/art/.bazaar/plugins/svn/branch.py", line 432, in create_checkout
    hardlink=hardlink)
  File "/home/art/.bazaar/plugins/svn/branch.py", line 363, in _create_heavyweight_checkout
    checkout_branch.pull(self, stop_revision=revision_id)
  File "/home/art/src/bzr-2.4.2/bzrlib/branch.py", line 1109, in pull
    possible_transports=possible_transports, *args, **kwargs)
  File "/home/art/.bazaar/plugins/svn/branch.py", line 989, in pull
    fetch_non_mainline=fetch_non_mainline)
  File "/home/art/.bazaar/plugins/svn/branch.py", line 942, in _basic_pull
    fetch_non_mainline=fetch_non_mainline)
  File "/home/art/.bazaar/plugins/svn/branch.py", line 862, in _update_revisions
    exclude_non_mainline=(not fetch_non_mainline))
  File "/home/art/.bazaar/plugins/svn/branch.py", line 830, in fetch
    exclude_non_mainline=exclude_non_mainline)
  File "/home/art/.bazaar/plugins/svn/branch.py", line 842, in _fetch_revmetas
    project=self.source.project, mapping=self.source.mapping)
  File "/home/art/.bazaar/plugins/svn/fetch.py", line 1647, in fetch
    pack_hint = self._fetch_revisions(needed, pb)
  File "/home/art/.bazaar/plugins/svn/fetch.py", line 1568, in _fetch_revisions
    use_replay=self._use_replay)
  File "/home/art/.bazaar/plugins/svn/fetch.py", line 1538, in _fetch_revisions_nochunks
    parent_revmeta)
  File "/home/art/.bazaar/plugins/svn/fetch.py", line 1478, in _fetch_revision_switch
    report_inventory_contents(reporter, parent_revnum, start_empty)
  File "/home/art/.bazaar/plugins/svn/errors.py", line 141, in convert
    return unbound(*args, **kwargs)
  File "/home/art/.bazaar/plugins/svn/fetch.py", line 1188, in report_inventory_contents
    reporter.finish()
  File "/usr/lib/python2.7/dist-packages/subvertpy/delta.py", line 71, in apply_window
    target_chunks.append(apply_txdelta_window(sbuf, window))
  File "/usr/lib/python2.7/dist-packages/subvertpy/delta.py", line 57, in apply_txdelta_window
    raise AssertionError("%d != %d" % (len(tview), tview_len))
AssertionError: 917 != 922

bzr 2.4.2 on python 2.7.2 (Linux-3.0.0-1-686-pae-i686-with-debian-wheezy-sid)
arguments: ['/home/art/src/bzr-2.4.2/bzr', 'co',
    'http://localhost:17280/repos/nos/trunk/', 'nos-trunk-bzr']
plugins: bash_completion[2.4.2], changelog_merge[2.4.2], launchpad[2.4.2],
    netrc_credential_store[2.4.2], news_merge[2.4.2], svn[1.1.1],
    weave_fmt[2.4.2]
encoding: 'UTF-8', fsenc: 'UTF-8', lang: 'en_GB.UTF-8'

Art O Cathain (art-home)
affects: bzr → bzr-svn
Revision history for this message
Jelmer Vernooij (jelmer) wrote :

Can you reproduce this in a new repository?

Revision history for this message
Art O Cathain (art-home) wrote :

Sorry, I doubt it. It's on an SVN repository with a lot of commits already. Is it possible for me to fix the inconsistent record myself somehow?

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

One way to work around it would be to remove all "bzr:*" revision properties from the repository, removing the bzr-svn cache (in ~/.cache/bazaar/svn), and cloning into a clean bzr repository.

Revision history for this message
Art O Cathain (art-home) wrote :

I realize this is a svn question not a bzr question, but how can I remove those "bzr:*" revision properties? Does it require dumping, filtering, and reloading the SVN repo?

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

You can remove the revision properties using the svn command line (something like "svn propdel --revision -r500 bzr:revision-id"), without dumping and reloading.

After you do this, you'll need to remove the bzr-svn cache and your existing bzr repositories that contain revisions from that svn repository.

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.