Code review comment for lp:~ian-clatworthy/bzr/faster-diff2

Ian Clatworthy (ian-clatworthy) wrote :

Martin Pool wrote:
>> If you feel the overhead is in 'bisect' time, then we should look at
>> where that bisect is being done. I would much rather have a 'location
>> hint' cache at the dirstate level, which would seed the bisect search.
>> So when iter_changes finds something interesting about ('foo', 'bar',
>> 'baz') it can then set the cache hint, so that a lookup of ('foo',
>> 'bar') knows right where to find the object. I would also design it so
>> that it grabs that entry, checks if it is correct. If not, it
>> invalidates the entry (possibly the whole cache?) and then does the
>> normal bisect.
>>
>
> I agree with that too, and the 4-point plan.
>
Me too. I think John's approach rocks.

Here's what I'd like to do:

1. back out the cache at the tree level
2. land the rest of this patch - the non-contentious bit
3. implement John's suggestion in a separate branch.

Sound ok?

Ian C.

« Back to merge proposal