[brisbane:MERGE] GroupCHKStreamSource
John Arbash Meinel
john at arbash-meinel.com
Tue Mar 31 22:20:18 BST 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
This adds a new StreamSource object, which is suitable for sending data
between groupcompress+chk repositories.
I wanted to move this into a generic PackStreamSource that can insert
revisions and iterate inventories to find keys that need to be sent.
However, this was far easier to implement, as I don't have to worry
about abstracting out whether or not you need to read chk pages, and how
you turn 'inventory' like things into (file_id, revision_id) keys.
On my trivial test, this changes "bzr branch X Y" times from ~5s down to
4s (bzr.dev formats are 3.6s).
I haven't run this (yet) against the launchpad tree that I was testing
earlier, mostly because we now have the last (known) disk format change,
so I can't trivially test it (I'm waiting for some conversions to finish
first).
I expect this to help 'bzr branch' times a reasonable amount, since it
means we load and process CHK pages 1 time, rather than 2x.
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAknSiRIACgkQJdeBCYSNAAPRBQCgylLJiBR+X1Z71hPqkOiTWQIP
8yMAoK8p7H2g1u1lSpaefiHF6DIYYAss
=kfMG
-----END PGP SIGNATURE-----
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: gc_pack_stream_source.patch
Url: https://lists.ubuntu.com/archives/bazaar/attachments/20090331/815b11bb/attachment.diff
More information about the bazaar
mailing list