[
https://issues.jboss.org/browse/ISPN-1190?page=com.atlassian.jira.plugin....
]
Manik Surtani commented on ISPN-1190:
-------------------------------------
Repurposing this jira to cover ISPN-1374 too:
{quote}
The class org.infinispan.util.ModuleProperties is being invoked with a classloader
parameter, but will cache whatever it builds in static fields, and the cached values are
returned to subsequent invocations whatever the classloader being used at the new
invocation.
Seems related to ISPN-1190: I think the ModuleProperties should not use static fields at
all.
{quote}
ModuleProperties could cause memory leaks
-----------------------------------------
Key: ISPN-1190
URL:
https://issues.jboss.org/browse/ISPN-1190
Project: Infinispan
Issue Type: Bug
Reporter: Galder ZamarreƱo
Assignee: Manik Surtani
Fix For: 5.1.0.BETA1, 5.1.0.FINAL
ModuleProperties can create class memory leaks, because it contains static collections
with references to user defined classes:
{code}private static Map<Byte,Class<? extends ModuleCommandInitializer>>
commandInitializers;
private static Collection<Class<? extends ReplicableCommand>>
moduleCommands;{code}
Also, the following two collections could contain references to instances of user defined
classes in static collections:
{code}private static Map<String,ModuleProperties> moduleProperties;
private static Map<Byte,ModuleCommandFactory> commandFactories;{code}
These collections should not be static, and their clearing should be guaranteed at
stoppage time. Even if there's any issues at stoppage time, they should not leak and
so any collections containing Class instances should be weakly referenced.
--
This message is automatically generated by JIRA.
For more information on JIRA, see:
http://www.atlassian.com/software/jira