[
https://issues.apache.org/jira/browse/HADOOP-1130?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Chris Douglas updated HADOOP-1130:
----------------------------------
Attachment: 1130.patch
DFSClient::ClientFinalizer is no longer used; no entries are ever added to it,
so it can be removed without affecting anything. However, there should be a
mechanism that calls FileSystem::closeAll if the JVM exits abnormally (to
release leases, etc. (see DFSClient::close)). This patch clears entries from
FileSystem.CACHE when there are no authorities for a given scheme and removes
the shutdown hook when the cache is empty.
> Remove unused ClientFinalizer in DFSClient
> ------------------------------------------
>
> Key: HADOOP-1130
> URL: https://issues.apache.org/jira/browse/HADOOP-1130
> Project: Hadoop
> Issue Type: Bug
> Components: dfs
> Affects Versions: 0.10.1, 0.11.0, 0.11.1, 0.11.2, 0.12.0
> Reporter: Philippe Gassmann
> Priority: Critical
> Attachments: 1130.patch, HADOOP-1130.diff
>
>
> The ClientFinalizer shutdown hook is not used.
> This can lead to severe memory leaks if you use the DFSClient in a dynamic
> class loading context (such as in a webapp) as the DFSClient.ClientFinalizer
> class is retained in the memory by the shutdown hook. It retains also the
> current ClassLoader and thus all classes loaded by the ClassLoader. (Threads
> put in the shutdown hook are never garbage collected).
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.