[MERGE] Tree.get_matching_blocks
Robert Collins
robertc at robertcollins.net
Fri Jul 20 06:26:24 BST 2007
On Fri, 2007-07-20 at 01:15 -0400, Aaron Bentley wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Hi all,
>
> This patch implements Tree.get_matching_blocks, which is a targeted API
> for high-performance bzr diff.
The code looks fine. I have questions about how this hangs together with
other things:
> Tree.get_matching_blocks will be implemented on top of a cache for
> comparison with the basis.
Does this imply a cache like svn does of all the basis texts ? Is faster
access to the historical data insufficient to get to where we want to ?
> For historical trees, it will be derived from content deltas.
Does it require line based deltas? Whats the impact if historical files
do not offer an exact matching diff immediately - will it fall back
cleanly? And do we have to use the same sequence matching operation for
historical commits as for 'bzr diff'/ will it impact the cleanliness of
bzr diff as we improve the diff logic (by giving substandard diffs
against old revisions) ?
> In addition to "diff" it can also speed up merge and commit.
Merge I can see, but I'm not sure about how it speeds up commit - we
currently diff against all parents to generate our annotation cache.
-Rob
--
GPG key available at: <http://www.robertcollins.net/keys.txt>.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20070720/980e74c9/attachment.pgp
More information about the bazaar
mailing list