> -----Original Message-----
> From: [email protected] [mailto:[email protected]]
> Sent: vrijdag 19 april 2013 20:22
> To: [email protected]
> Subject: svn commit: r1469982 - in /subversion/trunk/subversion:
> include/private/svn_client_private.h libsvn_client/log.c libsvn_client/ra.c
> tests/cmdline/log_tests.py
>
> Author: pburba
> Date: Fri Apr 19 18:21:36 2013
> New Revision: 1469982
>
> URL: http://svn.apache.org/r1469982
> Log:
> 2nd attempt to fix issue #4355 'svn_client_log5 broken with multiple
> revisions which span a rename'.
Hi,
This patch and the few before extend svn_client_log to call more and more
history operations on the same path.
(The path resolving via svn_client__repos_locations() is on the file system
layer essentially the same thing as walking the history on the filesystem
layer.)
Instead of patching more and more corner cases with individual extra ra calls I
think svn_client_log should call svn_client__repos_locations() once to obtain
the history of the path to look at over the entire range of versions. (=over
MAX(rev):MIN(rev)) and then use that information directly as the paths for the
rest of the log calls.
libsvn_client's log operation is already a very slow operation over high
latency links with mod_dav and this patching with extra ra requests is making
it worse and worse. Performing this operation once should improve the log
performance considerable, making the multi range version much better for script
and api users.
Bert