Details
-
Bug
-
Resolution: Unresolved
-
Major
-
None
-
2.4 RC1
-
None
-
Unknown
-
Description
The caching of the old rendering cache entries is delegated to com.xpn.xwiki.internal.cache.DefaultDocumentCache.
- an entry of the mapping might be lost before the cache entries it's referencing
- there is no locking around the insertion of new entries in the mapping in DefaultDocumentCache#set so theorically possible to have one mapping being lost when two threads insert a new entry about the same document at the exact same time.
- The used Set in the mapping cache is not thread-safe, thus there is no guarantee about what happens with concurrent writes from different threads or when/if writes become visible to other threads.
In practice, I doubt this cache really is used much since it's quite painful to manipulate (has to modify xwiki.properties and restart) and there is now more powerful and easier to use alternatives: