hadoop-common-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Yanbo Liang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (HADOOP-9041) FileSystem initialization can go into infinite loop
Date Thu, 15 Nov 2012 09:54:15 GMT

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

Yanbo Liang commented on HADOOP-9041:
-------------------------------------

The infinite loop caused by FileSystem.loadFileSystems(). If the users register  org.apache.hadoop.fs.FsUrlStreamHandlerFactory
as the current URLStreamHandlerFactory, then calling FsUrlStreamHandlerFactory.createURLStreamHandler()
will lead to invoke FileSystem.loadFileSystems(). FileSystem.loadFileSystems() will cause
to invoke FsUrlStreamHandlerFactory.createURLStreamHandler() when resolving a URL. Then the
infinite loop occurs.

Just moving the function of FileSystem.loadFileSystems() into a static code block. It will
initialize as the construction of Class and only once.

Looking forward for any comments.
                
> FileSystem initialization can go into infinite loop
> ---------------------------------------------------
>
>                 Key: HADOOP-9041
>                 URL: https://issues.apache.org/jira/browse/HADOOP-9041
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: fs
>    Affects Versions: 2.0.2-alpha
>            Reporter: Radim Kolar
>            Priority: Critical
>         Attachments: fstest.groovy, HADOOP-9041.patch
>
>
> More information is there: https://jira.springsource.org/browse/SHDP-111
> Referenced source code from example is: https://github.com/SpringSource/spring-hadoop/blob/master/src/main/java/org/springframework/data/hadoop/configuration/ConfigurationFactoryBean.java
> from isolating that cause it looks like if you register: org.apache.hadoop.fs.FsUrlStreamHandlerFactory
before calling FileSystem.loadFileSystems() then it goes into infinite loop.

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

Mime
View raw message