Details
-
Bug
-
Resolution: Done
-
Major
-
None
-
None
-
None
Description
ModuleProperties can create class memory leaks, because it contains static collections with references to user defined classes:
private static Map<Byte,Class<? extends ModuleCommandInitializer>> commandInitializers; private static Collection<Class<? extends ReplicableCommand>> moduleCommands;
Also, the following two collections could contain references to instances of user defined classes in static collections:
private static Map<String,ModuleProperties> moduleProperties; private static Map<Byte,ModuleCommandFactory> commandFactories;
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.
Attachments
Issue Links
- relates to
-
ISPN-1374 ModuleProperties ignores classloader parameter when returning cached values
- Resolved