[
https://issues.apache.org/jira/browse/ACCUMULO-1379?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13764329#comment-13764329
]
John Stoneham commented on ACCUMULO-1379:
-----------------------------------------
I'm partial to finalize()s that complain at you with a warning that you didn't
release the resource properly.
> PermGen leak
> --------------
>
> Key: ACCUMULO-1379
> URL: https://issues.apache.org/jira/browse/ACCUMULO-1379
> Project: Accumulo
> Issue Type: Bug
> Components: client
> Affects Versions: 1.4.3, 1.5.0
> Environment: Linux/JBoss
> Reporter: Mike Giordano
> Assignee: John Vines
> Fix For: 1.6.0
>
> Attachments: ACCUMULO-1379.patch, ACCUMULO-1379_v2.patch
>
>
> Under version 1.3.7 we are using the following code to initialize a cloudbase
> connection during initialization of our web app:
> ZooKeeperInstance instance = new
> ZooKeeperInstance(instanceName, zooKeepers);
> connector = instance.getConnector(userId,
> password.getBytes());
> The problem is that under the hood, this call creates several threads that
> are not cleaned up when the app is undeployed in JBoss. This is occurring
> without performing any scans or interacting with cloudbase in any other way.
> After relatively few redeploys of the app, the PermGen Space is OOM.
> I can't find any reference in the cloudbase API akin to a close() method for
> the Connector object. This is a classloader leak effecting any webapp that is
> accessing cloudbase directly. The result of this leak is not simply orphaned
> threads, but thousands of classes not gc'd because the classloader itself
> can't be gc'd. This is what is filling up PermGen.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira