Log Message: |
Work around for the poor performance of APR reader / writer locks on Windows.
Basically, fall back to 1.7 code on Win32 by using a simple mutex.
This resulted in a 35% increase in throughput for a 'null-export' over
ra_serf from hot SVN caches with revprop caching enabled. OTOH, this may
cost us some scalability with ra_svn on high-speed (>1Gb) networks.
* subversion/libsvn_subr/cache-membuffer.c
(USE_SIMPLE_MUTEX): New flag. Set depending on whether we need to fall
back to a simple locking scheme.
(svn_membuffer_t): Select lock type at compile time.
(read_lock_cache,
write_lock_cache,
force_write_lock_cache,
unlock_cache): Use the simple mutex lock when selected.
(svn_cache__membuffer_cache_create): Initialize the correct lock type and
disable the counter_mutex if redundant.
|