Memory leak when using FinalizingBrokerImpl
-------------------------------------------
Key: OPENJPA-1193
URL: https://issues.apache.org/jira/browse/OPENJPA-1193
Project: OpenJPA
Issue Type: Bug
Components: kernel
Affects Versions: 1.2.1, 1.2.0
Environment: All environments where the finalizing broker is used
Reporter: David Minor
Fix For: 1.3.0, 2.0.0-M1
When FinalizingBrokerImpl is used, AbstractBrokerFactory uses a set backed by
java's ConcurrentHashMap to keep track of brokers, rather than a weak reference
org.apache.openjpa.lib.util.concurrent.ConcurrentReferenceHashSet as it did
previously. This can lead to a memory leak if the brokers are never removed
from the Set.
The change was originally checked in by Patrick Linskey in revision 653000 with
the comment "Improve concurrency by actively managing AbstractBrokerFactory's
broker set when using non-finalizing brokers. Credit goes to Arunabh Hazarika
for identifying the bottleneck and prototyping this solution."
Changing the _brokers Set back to a weak reference ConcurrentReferenceHashSet
fixes the memory leak.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.