hadoop-common-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Konstantin Shvachko (JIRA)" <j...@apache.org>
Subject [jira] Updated: (HADOOP-2413) Is FSNamesystem.fsNamesystemObject unique?
Date Tue, 31 Mar 2009 23:05:50 GMT

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

Konstantin Shvachko updated HADOOP-2413:
----------------------------------------

    Attachment: unStatic.patch

Here is a patch, which finally removes the static {{FSNamesystem.fsNamesystemObject}} field
and the respective method to access it.
The trick was to eliminate static methods like {{FSEditsLog.loadFSEdits()}}.
I also had to change {{TestEditLog}}, which was starting {{MiniDFSCluster}} only to obtain
name directories and then worked directly with {{FSImage}}. Now it uses {{FSImage}} through
teh {{cluster}} variable.
I removed {{FSDirectory.namesystem}} member because namesystem is accessible via {{FSImage}}
now.

> Is FSNamesystem.fsNamesystemObject unique?
> ------------------------------------------
>
>                 Key: HADOOP-2413
>                 URL: https://issues.apache.org/jira/browse/HADOOP-2413
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>    Affects Versions: 0.15.1
>            Reporter: Tsz Wo (Nicholas), SZE
>            Priority: Minor
>             Fix For: 0.21.0
>
>         Attachments: unStatic.patch
>
>
> FSNamesystem is unique in almost all cases but it is not universally true.  So we should
either remove the static variable FSNamesystem.fsNamesystemObject or make it final (so that
it cannot be overwritten).
> When I am working on HADOOP-1298, I use the convenient static method FSNamesystem.getFSNamesystem()
to get "the" FSNamesystem object.  However, it keeps failing on TestCheckpoint.  Why?  It
is because TestCheckpoint uses NameNode and SecondaryNameNode.  Both of them are creating
FSNamesystem.  So FSNamesystem.fsNamesystemObject does not remain constant.  The kind of bug
is hard to be detected.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message