EHC ❯ Blocking cache can create several StripedReadWriteLockSync
-
Bug
-
Status: Closed
-
1 Critical
-
Resolution: Fixed
-
ehcache-core
-
-
cdennis
-
Reporter: augusto
-
November 03, 2010
-
0
-
Watchers: 0
-
July 27, 2012
-
November 09, 2010
Description
If a cache is created and then more than one thread invokes BlockingCache.get(Object key) and then into BlockingCache.getCacheLockProvider() at the same time, there’s a chance that more than one thread will invoke the line. this.cacheLockProvider = new StripedReadWriteLockSync(stripes);
Which means that for a small fraction of time, different callers will be using a different set of locks.
The cache lock provider should be created together with the BlockingCache to avoid this.
taken from: http://forums.terracotta.org/forums/posts/list/4438.page#23226
This affects the version which is in trunk