[MERGE] Inventory-free checkout

Aaron Bentley aaron at aaronbentley.com
Mon Dec 31 21:12:34 GMT 2007


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

Hi all,

This patch allows checkout to avoid ever converting a dirstate into an
inventory.  This is an important step in our goal of eventually removing
Tree.inventory from the public API.

It is also a slight performance improvement:
Old (best of 4):
real    0m1.015s
user    0m0.744s
sys     0m0.268

New (best of 4):
real    0m0.999s
user    0m0.764s
sys     0m0.208s

Which is a piddly 1.01x as fast.

This patch adds two APIs to provide functionality we previously needed
Inventory for.

Tree.iter_all_ids
This lists all the file ids in the tree.  We need this for our
duplicate-id checks

Tree.stored_kind
This produces the file kind stored in the inventory or dirstate.  It's
needed to generate an Inventory Delta involving files that are missing.

It also adds a dirstate-native implementation of apply_inventory_delta.

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

iD8DBQFHeVtC0F+nu1YWqI0RAmsiAJ9MYftnAuXj7t87xy97fmpv1a9sCACfdjTp
UwcQJh7n7KjVAHJFAa05e5I=
=jYYw
-----END PGP SIGNATURE-----
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bzr-mail-FRgjQC.patch
Type: text/x-diff
Size: 29721 bytes
Desc: not available
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20071231/3c95e7a5/attachment-0001.bin 


More information about the bazaar mailing list