Comment 2 for bug 605480

Revision history for this message
John A Meinel (jameinel) wrote : Re: [Bug 605480] Re: AssertionError on committing rename

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Ted Gould wrote:
> ** Attachment added: "Crash File"
> http://launchpadlibrarian.net/51932457/bzr-20100714160709-20874.crash
>

I don't think this is because of the renamed file. It would hint that
something is funny about your pack files triggering this. If you just
need to work around it, probably 'bzr pack' will clear things up by
doing it slightly differently. It would be nice to get a snapshot of
your current state if you can, though I realize '/Movies' is likely to
be a lot of data.

The traceback shows:
   File
"/usr/lib/python2.6/dist-packages/bzrlib/repofmt/groupcompress_repo.py",
line 461, in _copy_text_texts
     'texts', self._get_progress_stream, 4)
   File
"/usr/lib/python2.6/dist-packages/bzrlib/repofmt/groupcompress_repo.py",
line 402, in _copy_stream
     reuse_blocks=False):
   File "/usr/lib/python2.6/dist-packages/bzrlib/groupcompress.py", line
1721, in _insert_record_stream
     nostore_sha=nostore_sha)
   File "/usr/lib/python2.6/dist-packages/bzrlib/groupcompress.py", line
797, in compress
     start, end, type = self._compress(key, bytes, len(bytes) / 2, soft)
   File "/usr/lib/python2.6/dist-packages/bzrlib/groupcompress.py", line
967, in _compress
     delta = self._delta_index.make_delta(bytes, max_delta_size)
   File "_groupcompress_pyx.pyx", line 227, in
bzrlib._groupcompress_pyx.DeltaIndex.make_delta
   File "_groupcompress_pyx.pyx", line 205, in
bzrlib._groupcompress_pyx.DeltaIndex._populate_first_index
 AssertionError

And in context, it would appear:
    cdef _populate_first_index(self):
        cdef delta_index *index
        if len(self._sources) != 1 or self._index != NULL:
            raise AssertionError('_populate_first_index should only be'
                ' called when we have a single source and no index yet')

        # We know that self._index is already NULL, so whatever
        # create_delta_index returns is fine
        with nogil:
            self._index = create_delta_index(&self._source_infos[0], NULL)
        assert self._index != NULL

So... what seems to be happening is that 'create_delta_index' is
returning NULL. I'm guessing you are running out of memory (if it is
trying to repack Movies.)

Can you tell us the size of the content you are working with?

John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAkw+tT4ACgkQJdeBCYSNAAO+FACfTvY2J2l0qM2dEDT9QkX8KfKv
J+EAoJ41pCH+OKXcjtnaWz+A/9jJCrqO
=sbRN
-----END PGP SIGNATURE-----