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

Jing Zhao commented on HDFS-8077:
---------------------------------

The bug is caused by the change in HDFS-7907. In HDFS-7907, we add a new field 
{{corrupted}} in {{BlockToMarkCorrupt}}, then in {{checkReplicaCorrupt}} we 
simply use the parameter "reported" to construct the {{BlockToMarkCorrupt}} 
object. However, this reported object is actually a reused block object (see 
{{BlockListAsLongs#iterator}}) and we keep modifying the block during the 
report process. Therefore we should make a copy the block and use it for 
{{BlockToMarkCorrupt}} construction.

> Erasure coding: fix bug in EC zone and symlinks
> -----------------------------------------------
>
>                 Key: HDFS-8077
>                 URL: https://issues.apache.org/jira/browse/HDFS-8077
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>            Reporter: Zhe Zhang
>            Assignee: Jing Zhao
>         Attachments: HDFS-8077-000.patch, HDFS-8077.001.patch
>
>
> EC zone manager tries to get XAttr of an inode to determine the EC policy, 
> which doesn't work with symlinks. This patch has a simple fix to get rid of 
> test failures.
> Ideally we should also add logic to disallow creating symlinks in several 
> EC-related scenarios. But since symlinks are disabled in branch-2 and will 
> likely be disabled in trunk, this step is skipped now.
> The patch also fixes a small test error around {{getBlockReplication}}



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

Reply via email to