[
https://issues.jboss.org/browse/ISPN-4390?page=com.atlassian.jira.plugin....
]
Dan Berindei edited comment on ISPN-4390 at 4/7/16 11:42 AM:
-------------------------------------------------------------
I should add that our CHMv8 code comes from Doug Lea's repository, not from OpenJDK,
so the original code would also also have a problem with "leaked"
{{ThreadLocal}}s.
Still, I have a hunch that the non-deterministic cleanup of stale {{ThreadLocalMap}}
entries isn't such a big problem when you have a limited number of {{ThreadLocals}}.
It's only when the {{ThreadLocalMap}} grows very large, e.g. because we create one per
cache in {{InvocationContextContainerImpl}}, that {{cleanSomeSlots()}} becomes ineffective
and it takes multiple rounds to clean up the stale entries created by the previous
deployment. That and maybe worker threads that don't process requests often enough :)
was (Author: dan.berindei):
I should add that our CHMv8 code comes from Doug Lea's repository, not from OpenJDK,
so the original code would also also have a problem with "leaked" the
{{ThreadLocal}}.
Still, I have a hunch that the non-deterministic cleanup of stale {{ThreadLocalMap}}
entries isn't such a big problem when you have a limited number of {{ThreadLocals}}.
It's only when the {{ThreadLocalMap}} grows very large, e.g. because we create one per
cache in {{InvocationContextContainerImpl}}, that {{cleanSomeSlots()}} becomes ineffective
and it takes multiple rounds to clean up the stale entries created by the previous
deployment. That and maybe worker threads that don't process requests often enough :)
CHMv8 leaks ThreadLocal
-----------------------
Key: ISPN-4390
URL:
https://issues.jboss.org/browse/ISPN-4390
Project: Infinispan
Issue Type: Bug
Components: Core
Reporter: Sanne Grinovero
Assignee: William Burns
Fix For: 8.1.4.Final, 8.2.2.Final, 9.0.0.Final
As discussed on:
http://lists.jboss.org/pipermail/infinispan-dev/2014-June/015055.html
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)