RE: 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
From: Bert Huijben <bert_at_qqmail.nl>
Date: Sat, 20 Apr 2013 11:00:18 +0200
> -----Original Message-----
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.
This is an archived mail posted to the Subversion Dev mailing list.