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

Konstantin Shvachko updated HDFS-565:
-------------------------------------

    Attachment: CommitBlock.patch

> 1. convertLastBlockToUnderConstruction(): why relax the restriction 

This is useful when the client reopens the same file for append. I am not sure 
this was relaxed, because it is only used in append now.

> 2. FSnamesystem#completeFileInternal and getAdditionalBlock should change the 
> last block's state to be Committed even if it does not pass the progress 
> check.

Done. In the new patch block is committed before everything else.

> 3. While commiting a block, if one of its finalized replica does not match 
> the committed len and generation stamp, the replica should be marked as 
> corrupt.

This is a wish ahead. Marking block as corrupt will cause changes that are not 
intended for this patch. Another patch should implement full state transition 
logic represented in you design document by a graph on page 18. This would 
correspond to one edge on this graph if any.

The patch passes all tests and the test-patch target.

> Introduce block committing logic during new block allocation and file close.
> ----------------------------------------------------------------------------
>
>                 Key: HDFS-565
>                 URL: https://issues.apache.org/jira/browse/HDFS-565
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: hdfs client, name-node
>    Affects Versions: Append Branch
>            Reporter: Konstantin Shvachko
>            Assignee: Konstantin Shvachko
>             Fix For: Append Branch
>
>         Attachments: CommitBlock.patch, CommitBlock.patch
>
>
> {{ClientProtocol}} methods {{addBlock()}} and {{complete()}} need to include 
> additional parameter - a block, which has been successfully written to 
> data-nodes. By sending this block to the name-node the client confirms the 
> generation stamp of the block and its length. The block on the name-node 
> changes its state to committed and will become complete as long as one of the 
> finalized replicas reported by data-nodes.

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