You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-dev@hadoop.apache.org by "Tsz Wo (Nicholas), SZE (JIRA)" <ji...@apache.org> on 2008/04/30 21:39:55 UTC

[jira] Created: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

DatanodeDescriptor objects stored in FSImage may be out dated.
--------------------------------------------------------------

                 Key: HADOOP-3329
                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
             Project: Hadoop Core
          Issue Type: Bug
          Components: dfs
            Reporter: Tsz Wo (Nicholas), SZE


INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.

We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Updated: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "Robert Chansler (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Robert Chansler updated HADOOP-3329:
------------------------------------

    Release Note: Changed format of file system image to not store locations of last block.  (was: The file system image file does not store block locations of the last block of a file.)
    Hadoop Flags: [Incompatible change, Reviewed]  (was: [Reviewed, Incompatible change])

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: dhruba borthakur
>             Fix For: 0.18.0
>
>         Attachments: lastBlockLocations.patch
>
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Updated: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "dhruba borthakur (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

dhruba borthakur updated HADOOP-3329:
-------------------------------------

      Resolution: Fixed
    Release Note: The file system image file does not store block locations of the last block of a file.
    Hadoop Flags: [Incompatible change, Reviewed]
          Status: Resolved  (was: Patch Available)

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: dhruba borthakur
>             Fix For: 0.18.0
>
>         Attachments: lastBlockLocations.patch
>
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Assigned: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "dhruba borthakur (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

dhruba borthakur reassigned HADOOP-3329:
----------------------------------------

    Assignee: dhruba borthakur

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: dhruba borthakur
>             Fix For: 0.18.0
>
>         Attachments: lastBlockLocations.patch
>
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Commented: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "dhruba borthakur (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12594481#action_12594481 ] 

dhruba borthakur commented on HADOOP-3329:
------------------------------------------

I think it is worthwhile to *not* store the DatanodeDescriptor in the fsimage at all. The "append" code needs the location of the last block of the file to do lease recovery. In the case when the namenode restarts and before it does lease recovery, it will get the block locations of the last block from datanodes as part of block reports. 

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Updated: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "dhruba borthakur (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

dhruba borthakur updated HADOOP-3329:
-------------------------------------

    Fix Version/s: 0.18.0
           Status: Patch Available  (was: Open)

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: dhruba borthakur
>             Fix For: 0.18.0
>
>         Attachments: lastBlockLocations.patch
>
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Commented: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "Hadoop QA (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12594606#action_12594606 ] 

Hadoop QA commented on HADOOP-3329:
-----------------------------------

-1 overall.  Here are the results of testing the latest attachment 
  http://issues.apache.org/jira/secure/attachment/12381486/lastBlockLocations.patch
  against trunk revision 653749.

    +1 @author.  The patch does not contain any @author tags.

    -1 tests included.  The patch doesn't appear to include any new or modified tests.
                        Please justify why no tests are needed for this patch.

    +1 javadoc.  The javadoc tool did not generate any warning messages.

    +1 javac.  The applied patch does not increase the total number of javac compiler warnings.

    +1 findbugs.  The patch does not introduce any new Findbugs warnings.

    +1 release audit.  The applied patch does not increase the total number of release audit warnings.

    +1 core tests.  The patch passed core unit tests.

    +1 contrib tests.  The patch passed contrib unit tests.

Test results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/2411/testReport/
Findbugs warnings: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/2411/artifact/trunk/build/test/findbugs/newPatchFindbugsWarnings.html
Checkstyle results: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/2411/artifact/trunk/build/test/checkstyle-errors.html
Console output: http://hudson.zones.apache.org/hudson/job/Hadoop-Patch/2411/console

This message is automatically generated.

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: dhruba borthakur
>             Fix For: 0.18.0
>
>         Attachments: lastBlockLocations.patch
>
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Commented: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12595817#action_12595817 ] 

Hudson commented on HADOOP-3329:
--------------------------------

Integrated in Hadoop-trunk #486 (See [http://hudson.zones.apache.org/hudson/job/Hadoop-trunk/486/])

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: dhruba borthakur
>             Fix For: 0.18.0
>
>         Attachments: lastBlockLocations.patch
>
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Commented: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "dhruba borthakur (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12595728#action_12595728 ] 

dhruba borthakur commented on HADOOP-3329:
------------------------------------------

I just committed this.

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: dhruba borthakur
>             Fix For: 0.18.0
>
>         Attachments: lastBlockLocations.patch
>
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Commented: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "Tsz Wo (Nicholas), SZE (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12594644#action_12594644 ] 

Tsz Wo (Nicholas), SZE commented on HADOOP-3329:
------------------------------------------------

+1 codes look good

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: dhruba borthakur
>             Fix For: 0.18.0
>
>         Attachments: lastBlockLocations.patch
>
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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


[jira] Updated: (HADOOP-3329) DatanodeDescriptor objects stored in FSImage may be out dated.

Posted by "dhruba borthakur (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HADOOP-3329?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

dhruba borthakur updated HADOOP-3329:
-------------------------------------

    Attachment: lastBlockLocations.patch

This patch removes the last block locations that were earlier stored in each persistent lease record. 

> DatanodeDescriptor objects stored in FSImage may be out dated.
> --------------------------------------------------------------
>
>                 Key: HADOOP-3329
>                 URL: https://issues.apache.org/jira/browse/HADOOP-3329
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>            Reporter: Tsz Wo (Nicholas), SZE
>            Assignee: dhruba borthakur
>             Fix For: 0.18.0
>
>         Attachments: lastBlockLocations.patch
>
>
> INodeFileUnderConstruction.targets is a DatanodeDescriptor array which stores the locations for last block.  These DatanodeDescriptors are serialized and stored in the FSImage.  However, a DatanodeDescriptor contains information like IP address and ports.  These information may be out dated after a datanode restart.
> We should probably only stored the storageID of a DatanodeDescriptor in FSImage and then lookup the DatanodeDescriptor object from the datanodeMap.

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