Performance of bzr update for lightweight checkout

Aaron Bentley aaron at aaronbentley.com
Fri Feb 4 20:20:57 UTC 2011


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

On 11-02-04 02:20 PM, Ulrich Mueller wrote:
>>>>>> On Fri, 04 Feb 2011, Aaron Bentley wrote:
>> Lightweight checkouts are meant for use in high-bandwidth, low-latency
>> environments, such as LANs or local disk.  It sounds like you should be
>> using heavyweight checkouts or branches instead.
> 
> We'd love to do so, but the time needed for the initial (heavyweight)
> checkout seems prohibitive:
> 
>    $ date; bzr checkout bzr://bzr.savannah.gnu.org/emacs/trunk/ emacs-test; date
>    Fri Feb  4 18:21:11 CET 2011
>    Fri Feb  4 19:58:06 CET 2011
> 
> That's 97 minutes (and I did this test at work, with a fast network
> connection).

You should only have to pay that cost once per computer.  After that,
stacking or shared repositories means you'll only need to copy new data.

>> In order to perform an update, you need history.  Most of the data you
>> see being transferred will be history data.
> 
> Sorry, but I don't understand. It shouldn't need the full history

Right.

>, but
> only the history leading from the old to the new revision?

No, the amount of history needed depends on how the data the file texts
were groupcompressed, and I believe it also depends on the CHK layout.
It will rarely be the full history, but it will vary somewhat unpredictably.

> And 700 MB
> for the update are even more than the amount of data transferred for
> an initial heavyweight checkout, which is around 550 MB.

Sure.  Lightweight checkouts are optimised for your a use case very
different from yours, where the data it accesses is considered local.
By using lightweight checkouts, you are choosing to operate without a
cache, which is why bzr is downloading data inefficiently or repeatedly.

Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iEYEARECAAYFAk1MX6kACgkQ0F+nu1YWqI1FMgCfUKTcCQ/MegB5LOnSRDKrXBdl
MS0An3YYHnY/4g071zF/0cMcAaz/Fom8
=kdZe
-----END PGP SIGNATURE-----



More information about the bazaar mailing list