Hi, CacheManager was added because Jackrabbit ran out of memory. Jackrabbit uses multiple 'caches', each one is not very big, but combined they use a lot of memory. I never understood why Jackrabbit uses so many caches. My tests (no versioning) resulted in about 12 caches with one session, and it seems in your tests (with versioning) you got 756 caches (https://issues.apache.org/jira/secure/attachment/12363078/JCR-Trace.txt).
There is a short term solution is to change CacheManager.DEFAULT_MIN_MEMORY_PER_CACHE = 8 * 1024. However, this will only work with up to 1000 caches or so. More important would be to understand why Jackrabbit uses so many caches. Do you use only one workspace, and one session? I will try to reproduce this problem with the code you provided. Thomas
