[rfc] [patch] speeding up bzr log with a tree delta iterator
John A Meinel
john at arbash-meinel.com
Fri Jan 27 14:08:35 GMT 2006
Denys Duchier wrote:
> John Arbash Meinel <john at arbash-meinel.com> writes:
>
>> So I would like to see:
>>
>> def revision_iter(self, revisions, reverse=False, delta=False):
>
> That by itself would not be sufficiently helpful because one non-negligible
> convenience of my iterator is that it figures out the set of revisions that we
> need to iterate over.
>
> So instead, I refactored things:
>
> branch.revid_iter(rev1, rev2=None, reverse=False, pad=False)
>
> gives me an iterator over revids. It does all the figuring out.
> The pad argument is for including the predecessor of the oldest
> bound (this is what we want for computing deltas).
>
> branch.delta_iter(reviter, reverse=False, rev2no=None, delta=False)
>
> reviter is a revid iterator as produced by branch.revid_iter.
>
> branch.revdelta_iter(rev1, rev2=None, reverse=False, delta=False)
>
> combines the previous two to provide the functionality that
> branch.revision_iter used to provide (the latter was deleted in
> favor of this new method).
>
> available as revno=1528 in my bzr.fix.log branch. Here is the compound diff
> against bzr.dev mainline (revno=1524):
>
...
>
> --Denys
I'm okay with this, but I would really like to have someone else's
input. Can someone else give a review? I'm about +0. It has the
functionality, but I'm not sure about the interface.
Adding 3 functions to Branch seems like a lot. Especially when it used
to be done with 2 external functions (which could have been done with
one and a 'reverse' flag).
I certainly won't block it, so if someone else likes it, we can merge it.
John
=:->
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 249 bytes
Desc: OpenPGP digital signature
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20060127/fb3fbfad/attachment.pgp
More information about the bazaar
mailing list