On Tue, 29 Mar 2005, Mark Benedetto King wrote:
> On Tue, Mar 29, 2005 at 12:18:29PM +0200, Peter N. Lundblad wrote:
> > On Thu, 24 Mar 2005, Daniel Berlin wrote:
> >
> > > Sussman asked me to post the current work i have on streamy blame (done
> > > by blaming files from youngest revision to oldest, instead of the other
> > > way around) since it was hoping to be ready for 1.2.
> > >
> > I think this improvement is worthwhile, but I thought it was mostly about
> > streaminess, not speed. sussman gave another impression in his mail.
> >
>
> There are two speed improvements (that I'm aware of):
>
> The O(n^2) blame bookkeeping is gone, replaced with a new datastructure.
Did anyone show that this is the bottleneck?
> I haven't looked at the new one, but it could hardly be worse. The new
> datastructure allows for early termination, which can be a big win.
>
It can, but in not so common cases.
> There is also a perceived speed improvement due to the reduced latency
> (gcc blames were spending a long time server-side before the revision list
the current implementation doesn't show anything until the revisions have
been translated, so the user won't notice.
> was sent to the client). This should also improve overall system
> scalability, since it takes load off of the server.
>
Valid point.
Note that we have the same problem in svn log AFAICT. I wonder why no one
is complaining loudly about that:-)
> > > Unless someone has a better idea, or believes we should put it all off
> > > *anyway*,etc.
> > >
> > >
> > I think the idea is fine and I'm willing to work with you with it for 1.3.
> > But I htink we should punt for 1.2. (Blaming bing ChangeLog files isn't
> > that a common use case, is it?:-) > --Dan
> >
>
> I think they're worth the disruption. We're putting in locking!
> That's a much bigger thing, IMO, and much more likely to have bugs.
>
OK, so let mer refine my statement above. We're putting in locking, which
probably deestabilizes things (hopefully not, but...). That's new
functionality. OTOH, bugs in the new blame algorithm are regressions.
When I wrote the above, I was under the impression that we'd branch in the
middle of this week, i.e. today or tomorrow. If the blame stuf gets ready
until we actually branch (maybe in a week), there is of course no point in
blocking it just for the sake of it. By ready, I mean the whole thing -
not just APIs and the server part. I note that Daniel made progress on the
client side since last Sunday.
So, I like the change, it should go in, but IMO it is no 1.2 showstopper
at all.
Regards,
//Peter
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Mar 30 12:14:33 2005