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

Hairong Kuang commented on HADOOP-5134:
---------------------------------------

My point is that a lease should not be removed before all blocks of an 
under-construction file reaches the minimum replication factor. Whether this is 
part of lease recovery or not is an implementation detail.

With your patch, is the last block still at the risk described in HADOOP-5133? 
If so, I would prefer to do this right instead of worrying about append. This 
is a patch to 0.18 no append is supported in this version.

> FSNamesystem#commitBlockSynchronization adds under-construction block 
> locations to blocksMap
> --------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-5134
>                 URL: https://issues.apache.org/jira/browse/HADOOP-5134
>             Project: Hadoop Core
>          Issue Type: Bug
>          Components: dfs
>    Affects Versions: 0.18.2
>            Reporter: Hairong Kuang
>            Assignee: dhruba borthakur
>            Priority: Blocker
>             Fix For: 0.18.4
>
>         Attachments: commitBlockSync.patch
>
>
> From my understanding of sync/append design, an under construction block 
> should not have any block locations associated with it in the blocksMap. So 
> an under construction block will not be managed by ReplicationMonitor.
> However, if there is an error in the write pipeline, a lease recovery will 
> trigger a call, commitBlockSynchronization, to NN. This call will add the 
> successfully-recovered datanodes to blocksMap. This seems to violate the 
> design. It should update the targets of the last block at INode instead. 

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