Log Message: |
Improve membuffer cache scalability by replacing the per-segment
mutexes with WORM locks. That allows concurrent reads to the
same cache segment and reads can therefore be allowed to take
much longer (large directories etc.).
* subversion/libsvn_subr/cache-membuffer.c
(svn_membuffer_t): replace the lock type
(read_lock_cache, write_lock_cache, unlock_cache,
WITH_READ_LOCK, WITH_WRITE_LOCK): new locking utilities
(svn_cache__membuffer_cache_create): adapt lock init code
(membuffer_cache_set, membuffer_cache_get,
membuffer_cache_get_partial, membuffer_cache_set_partial,
svn_membuffer_cache_get_info): replace lock macros
|