Hi guys,

after experiencing huge L2 memory problems while heavy loading two
ehcache caches with little string values, I decided to analyze L2
memory dumps and discovered that the
com.tc.objectserver.locks.LockStore memory occupation constantly grows
until it takes half of the available heap and the L2 stops becoming
responsive.
I already talked about this problem on the users list, and Nitin said
me that tc 3.2.1 had a memory leak problem resolved in patched_3.2.1.
Even if it didn't seem to me a memory leak problem, I built tc
patched_3.2.1 and repeated the test: in fact, I still have the same
memory problem.

So, I took a look at the com.tc.objectserver.locks.LockStore class and
I saw that it holds all lock objects inside memory: making a few
simple math operations shows me that the problem is just that
in-memory LockStore lock objects actually take half of the heap
(obviously, at the moment I took the dump).

So, the default ecache behavior of using a different lock per cache
element is clearly unscalable, and I was wondering if:
1) Did you have any plans to reduce LockStore memory footprint, maybe
by spilling to disc?
2) In the meantime, how can I change the default ehcache behavior
regarding locks?

Thanks,
Cheers,

Sergio B.

-- 
Sergio Bossa
http://www.linkedin.com/in/sergiob
_______________________________________________
tc-dev mailing list
tc-dev@lists.terracotta.org
http://lists.terracotta.org/mailman/listinfo/tc-dev

Reply via email to