[ https://issues.apache.org/jira/browse/HADOOP-15565?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17103532#comment-17103532 ]
Uma Maheswara Rao G commented on HADOOP-15565: ---------------------------------------------- [~virajith] I have looked at the patch. It seems clean backport to me. I am almost +1, But I have a question: Looks like following change is not from this trunk patch. In FileSystem.java {code:java} 197 @VisibleForTesting 198 static void removeFileSystemForTesting(URI uri, Configuration conf, 199 FileSystem fs) throws IOException { 200 CACHE.map.remove(new Cache.Key(uri, conf), fs); 201 } {code} I have looked history and figured out that, this change introduced as part of [^HADOOP-13656.008.patch] Could you please check if we can avoid that change in this JIRA? Otherwise I am +1. > ViewFileSystem.close doesn't close child filesystems and causes FileSystem > objects leak. > ---------------------------------------------------------------------------------------- > > Key: HADOOP-15565 > URL: https://issues.apache.org/jira/browse/HADOOP-15565 > Project: Hadoop Common > Issue Type: Bug > Reporter: Jinglun > Assignee: Jinglun > Priority: Major > Fix For: 3.3.0 > > Attachments: HADOOP-15565-branch-3.2.001.patch, > HADOOP-15565.0001.patch, HADOOP-15565.0002.patch, HADOOP-15565.0003.patch, > HADOOP-15565.0004.patch, HADOOP-15565.0005.patch, HADOOP-15565.0006.bak, > HADOOP-15565.0006.patch, HADOOP-15565.0007.patch, HADOOP-15565.0008.patch > > > ViewFileSystem.close() does nothing but remove itself from FileSystem.CACHE. > It's children filesystems are cached in FileSystem.CACHE and shared by all > the ViewFileSystem instances. We could't simply close all the children > filesystems because it will break the semantic of FileSystem.newInstance(). > We might add an inner cache to ViewFileSystem, let it cache all the children > filesystems. The children filesystems are not shared any more. When > ViewFileSystem is closed we close all the children filesystems in the inner > cache. The ViewFileSystem is still cached by FileSystem.CACHE so there won't > be too many FileSystem instances. > The FileSystem.CACHE caches the ViewFileSysem instance and the other > instances(the children filesystems) are cached in the inner cache. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: common-issues-unsubscr...@hadoop.apache.org For additional commands, e-mail: common-issues-h...@hadoop.apache.org