1.0a bundles now convert bzr.dev
Aaron Bentley
aaron.bentley at utoronto.ca
Wed Jun 20 15:57:22 BST 2007
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Hi all,
I've succeeded in adding support for the bzr.dev repository to the new
bundles.
This turned out to be a challenge, because bzr.dev has some internal
inconsistencies-- the knits refer to versions that are not listed in the
inventory. These inconsistencies appear to stem from when we converted
from flat-file storage to weaves. Robert Collins and I have discussed
repairing bzr.dev.
A complete bundle for bzr.dev takes about 17M. That includes the
"prelude" patch. Such bundles can be produced in about 4 minutes on
relatively modern hardware. The largest cost (64%) is
SequenceMatcher.get_matching_blocks. Since that is used to reduce the
space usage, it is a classic space-time tradeoff.
knit.get_line_list is the cause of 9.18% of compute time.
It is conceivable that future formats could include multi-parent diffs
for every revision of a file. That would reduce the generation cost
dramatically. For current formats, further optimization of
get_line_list or get_blocks would be beneficial. Caching or even
memoization would also be possible.
Anyhow, now that bundles pass the bzr.dev torture test, I'll be working
on missing functionality.
Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGeUBS0F+nu1YWqI0RAtSpAKCFMOwMQCVfr2vp4rEoY37+TJr/CwCghrV/
rzmpycEKKsbOhWwhhgF+BFw=
=lL+A
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list