[ 
https://issues.apache.org/jira/browse/HDFS-2290?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13091668#comment-13091668
 ] 

Konstantin Shvachko commented on HDFS-2290:
-------------------------------------------

*The correct behavior* should be that NN replicates the block using one of the 
good replica, and then deletes the corrupt replica. So there are 2 steps:
# replicating a good replica
# deleting the corrupt replica when the block is fully replicated

Replication is handled by ReplicationMonitor, which replicates blocks from 
{{neededReplications}} list. It seems that while processing corrupt replicas we 
somehow miss to put them into {{neededReplications}}.

> Block with corrupt replica is not getting replicated
> ----------------------------------------------------
>
>                 Key: HDFS-2290
>                 URL: https://issues.apache.org/jira/browse/HDFS-2290
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: name-node
>    Affects Versions: 0.22.0
>            Reporter: Konstantin Shvachko
>             Fix For: 0.22.0
>
>
> A block has one replica marked as corrupt and two good ones. countNodes() 
> correctly detects that there are only 2 live replicas, and fsck reports the 
> block as under-replicated. But ReplicationMonitor never schedules replication 
> of good replicas.

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

Reply via email to