[
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4317?page=c...
]
Ondrej Medek commented on HHH-4317:
-----------------------------------
Pablo, calling a method by reflection is cheap, but a method lookup by
Class.getDeclaredMethod() is expensive (the lookup Class.forName() is expensive, too.) I
mean "expensive" comparing with HashMap.get(), probably much much cheaper then
DB access :-)
Also the other problem with the original implementation of EnumType is a thread-safety. I
guess the caching in enumValues is not a thread safe.
Memory leak in EnumType class.
------------------------------
Key: HHH-4317
URL:
http://opensource.atlassian.com/projects/hibernate/browse/HHH-4317
Project: Hibernate Core
Issue Type: Bug
Components: annotations
Reporter: Paweł Kępka
Priority: Critical
Attachments: EnumType.java, enumtypeleak.war
Holding enum values in static enumValues map in EnumType class causes memory leaks on
application server where hibernate is loaded by application server's common
classloader (like for default configuration of JBoss4).
SoftReference or SessionFactory based caching should be used instead.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://opensource.atlassian.com/projects/hibernate/secure/Administrators....
-
For more information on JIRA, see:
http://www.atlassian.com/software/jira