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

Tsz Wo (Nicholas), SZE updated HADOOP-2413:
-------------------------------------------

    Component/s: dfs
    Description: 
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.

  was:
FSNamesystem is unique in almost all cases but it is not be universally true.  
So we should either remove the static variable FSNamesystem.fsNamesystemObject 
or make it final (so that it cannot be overwritten).

When I working on HADOOP-1298, I use the convenient static method 
FSNamesystem.getFSNamesystem() to get "the" FSNamesystem object.  However, it 
keeps failing TestCheckpoint.  Why?  It is because TestCheckpoint use NameNode 
and SecondaryNameNode.  Both of them are creating FSNamesystem.  So 
FSNamesystem.fsNamesystemObject is not unique.


> Is FSNamesystem.fsNamesystemObject unique?
> ------------------------------------------
>
>                 Key: HADOOP-2413
>                 URL: https://issues.apache.org/jira/browse/HADOOP-2413
>             Project: Hadoop
>          Issue Type: Bug
>          Components: dfs
>    Affects Versions: 0.15.1
>            Reporter: Tsz Wo (Nicholas), SZE
>            Priority: Minor
>
> 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.

Reply via email to