potential memory leak when using ThreadSafeClientConnManager
------------------------------------------------------------
Key: HTTPCLIENT-841
URL: https://issues.apache.org/jira/browse/HTTPCLIENT-841
Project: HttpComponents HttpClient
Issue Type: Bug
Components: HttpClient
Affects Versions: 4.0 Beta 2
Environment: Leopard 10.5.6, Java 1.5.0_16, Jetty 6.1.7
Reporter: Ted Slusser
When using ThreadSafeClientConnManager and developing with Jetty using
auto-redeploy feature eventually I run into a PermGen out of memory exception.
I investigated with YourKit 8.0.6 and found a class loader circular reference
in RefQueueWorker. Not really sure what I was doing I made the refQueueHandler
non-final and nulled it in the shutdown method of RedQueueWorker. I don't seem
to have the problem any longer with circular class loader references.
Here is a diff from 4.0-beta2
---
httpclient/src/main/java/org/apache/http/impl/conn/tsccm/RefQueueWorker.jav(revision
763223)
+++
httpclient/src/main/java/org/apache/http/impl/conn/tsccm/RefQueueWorker.jav(working
copy)
@@ -50,7 +50,7 @@
protected final ReferenceQueue<?> refQueue;
/** The handler for the references found. */
- protected final RefQueueHandler refHandler;
+ protected RefQueueHandler refHandler;
/**
@@ -112,6 +112,8 @@
this.workerThread = null; // indicate shutdown
wt.interrupt();
}
+
+ refHandler = null;
}
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]