[ 
https://issues.apache.org/jira/browse/HADOOP-12707?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Chris Nauroth resolved HADOOP-12707.
------------------------------------
    Resolution: Won't Fix

Hello, [~haitao-tony].  Thank you for filing the issue, but the current 
implementation of {{UserGroupInformation#hashCode}} and 
{{UserGroupInformation#equals}} is by design.  Please see issue HADOOP-6670 if 
you're interested in more background.

I have 2 suggestions to offer for the memory leak problem that you noticed:
# Consider using the {{FileSystem#closeAllForUGI}} method, which would close 
all cached instances for a user.
# If it's not possible to change code, then consider disabling the cache by 
setting configuration property {{fs.hdfs.impl.disable.cache}} to {{true}} in 
core-site.xml.  This would bypass the cache completely, which might be 
appropriate depending on your application.

> key of FileSystem inner class Cache contains UGI.hascode which uses the 
> defualt hascode method, leading to the memory leak
> --------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-12707
>                 URL: https://issues.apache.org/jira/browse/HADOOP-12707
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs
>    Affects Versions: 2.7.1
>            Reporter: sunhaitao
>            Assignee: sunhaitao
>
> FileSystem.get(conf) method,By default it will get the fs object from 
> CACHE,But the key of the CACHE  constains ugi.hashCode, which uses the 
> default hascode method of subject instead of the hascode method overwritten 
> by subject.
>    @Override
>       public int hashCode() {
>         return (scheme + authority).hashCode() + ugi.hashCode() + (int)unique;
>       }
> In this case, even if same user, if the calll FileSystem.get(conf) twice, two 
> different key will be created. In long duartion, this will lead to memory 
> leak.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to