[
https://issues.apache.org/jira/browse/HADOOP-4663?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12668218#action_12668218
]
dhruba borthakur commented on HADOOP-4663:
------------------------------------------
> From the scenario I outlined above, will it work? All the blocks have same
> gen-stamp and have (slightly) different lengths. For the given scenario
> above, could you tell how it ends up with a valid block?
This is the core of the generation-stamp recovery logic. The primary datanode
contacts each of the datanode(s) in the pipeline and retrieves the generation
stamp and the length of each of the replicas. It picks as valid only those
replicas that equals or exceeds the generation stamp stored in the NN. For each
of these "valid" replicas, it picks only those replica(s) that have the
smallest size. These are the "real valid" replicas of the block. The other
replicas can be deleted.
The primary datanode then stamps all those "valid" replicas with a new
generation stamp and updates the namenode inode list with this new generation
stamp for this block.
> Datanode should delete files under tmp when upgraded from 0.17
> --------------------------------------------------------------
>
> Key: HADOOP-4663
> URL: https://issues.apache.org/jira/browse/HADOOP-4663
> Project: Hadoop Core
> Issue Type: Bug
> Components: dfs
> Affects Versions: 0.18.0
> Reporter: Raghu Angadi
> Assignee: dhruba borthakur
> Priority: Blocker
> Fix For: 0.19.1
>
> Attachments: deleteTmp.patch, deleteTmp2.patch, deleteTmp_0.18.patch,
> handleTmp1.patch
>
>
> Before 0.18, when Datanode restarts, it deletes files under data-dir/tmp
> directory since these files are not valid anymore. But in 0.18 it moves these
> files to normal directory incorrectly making them valid blocks. One of the
> following would work :
> - remove the tmp files during upgrade, or
> - if the files under /tmp are in pre-18 format (i.e. no generation), delete
> them.
> Currently effect of this bug is that, these files end up failing block
> verification and eventually get deleted. But cause incorrect over-replication
> at the namenode before that.
> Also it looks like our policy regd treating files under tmp needs to be
> defined better. Right now there are probably one or two more bugs with it.
> Dhruba, please file them if you rememeber.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.