While trying to find the memory leak described in issue 1964, I accidentally
stumbled upon this issue. It took libsvn_client 4 hours to gather the
information required to start the commit as described by the mail referenced in
that issue (http://subversion.tigris.org/servlets/ReadMsg?list=dev&msgNo=71973).
During these 4 hours, most of the time the CPU was used 96% or more by the svn
executable.
Scripts to reproduce soon to be attached.
My testing was with trunk r10812 on a RH9 system modified to run a Linux 2.6.8.1
kernel with a 3Ghz P4.
Initial profiling output from OProfile (after running not more than a few minutes):
[erik@bartje oprofile-0.8]$ opreport -l subversion/clients/cmdline/svn
CPU: P4 / Xeon with 2 hyper-threads, speed 3000.77 MHz (estimated)
Counted GLOBAL_POWER_EVENTS events (time during which processor is not stopped)
with a unit mask of 0x01 (mandatory) count 100000
samples % symbol name
929008 92.5807 look_up_committable
17624 1.7563 anonymous symbol from section .plt
9896 0.9862 svn_utf__is_valid
5547 0.5528 svn_path_canonicalize
3658 0.3645 harvest_committables