[ 
https://issues.apache.org/jira/browse/HDFS-3373?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13458012#comment-13458012
 ] 

John George commented on HDFS-3373:
-----------------------------------


Thanks for looking into the patch Nicholas.

{quote}
- In SocketCache.getInstance(..),
-* If SocketCache is already initialized (i.e. isInitedOnce == true), then the 
parameters c and e will be igored silently.  Would it be a problem?
{quote}
This was done on purpose to avoid complications. I thought it would be better 
to keep it simple and allow only one valid setting of c and e.
{quote}
-* If it throws IllegalStateException, should isInitedOnce not be set to true?
-* typo: "initialzied" => "initialized"

- In SocketCache.evictExpired(..),
-* remove "throws IOException" since it does not throw it.
-* remove synchronized(this) since it is already synchronized.

- In SocketCache, add createTime to SocketAndStreams and remove SocketProp.

- In SocketCache.put(..), move "Preconditions.checkNotNull(sock);" to the very 
beginning.
{quote}
Thanks for these comments - will upload a patch incorporating these soon.
                
> FileContext HDFS implementation can leak socket caches
> ------------------------------------------------------
>
>                 Key: HDFS-3373
>                 URL: https://issues.apache.org/jira/browse/HDFS-3373
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: hdfs client
>    Affects Versions: 2.0.0-alpha, 3.0.0
>            Reporter: Todd Lipcon
>            Assignee: John George
>         Attachments: HDFS-3373.branch-23.patch, HDFS-3373.trunk.patch, 
> HDFS-3373.trunk.patch.1
>
>
> As noted by Nicholas in HDFS-3359, FileContext doesn't have a close() method, 
> and thus never calls DFSClient.close(). This means that, until finalizers 
> run, DFSClient will hold on to its SocketCache object and potentially have a 
> lot of outstanding sockets/fds held on to.

--
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

Reply via email to