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

Zhe Zhang commented on HDFS-9205:
---------------------------------

Thanks Nicholas for the work. A few comments:
# bq. As a consequence, they cannot be replicated
Just to clarify, do you mean that even without the patch, those blocks won't be 
re-replicated, even though {{chooseUnderReplicatedBlocks}} returns them? Or 
they are re-replicated in the current logic, but they should not be (IIUC 
that's the case)?
# I agree that corrupt blocks are unreadable by HDFS client. But is there a use 
case for an admin to list corrupt blocks and reason about them by accessing the 
local {{blk_}} (and metadata) files? For example, there's a chance (although 
very rare) that the replica is intact and only the metadata file is corrupt.
# If we do want to save the replication work for corrupt blocks, should we get 
rid of {{QUEUE_WITH_CORRUPT_BLOCKS}} altogether?

Nit:
# This line of comment should be updated:
{code}
// and 5 blocks from QUEUE_WITH_CORRUPT_BLOCKS.
{code}

> Do not schedule corrupt blocks for replication
> ----------------------------------------------
>
>                 Key: HDFS-9205
>                 URL: https://issues.apache.org/jira/browse/HDFS-9205
>             Project: Hadoop HDFS
>          Issue Type: Improvement
>          Components: namenode
>            Reporter: Tsz Wo Nicholas Sze
>            Assignee: Tsz Wo Nicholas Sze
>            Priority: Minor
>         Attachments: h9205_20151007.patch, h9205_20151007b.patch, 
> h9205_20151008.patch
>
>
> Corrupted blocks by definition are blocks cannot be read. As a consequence, 
> they cannot be replicated.  In UnderReplicatedBlocks, there is a queue for 
> QUEUE_WITH_CORRUPT_BLOCKS and chooseUnderReplicatedBlocks may choose blocks 
> from it.  It seems that scheduling corrupted block for replication is wasting 
> resource and potentially slow down replication for the higher priority blocks.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to