[ 
https://issues.apache.org/jira/browse/HADOOP-1130?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12534432
 ] 

chris.douglas edited comment on HADOOP-1130 at 10/12/07 3:42 PM:
-----------------------------------------------------------------

[ edit - removed grossly redundant exposition ]

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.

      was (Author: chris.douglas):
    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
>            Assignee: Chris Douglas
>            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.

Reply via email to