[
https://issues.apache.org/jira/browse/HDFS-16566?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Wei-Chiu Chuang updated HDFS-16566:
-----------------------------------
Component/s: ec
erasure-coding
> Erasure Coding: Recovery may causes excess replicas when busy DN exsits
> -----------------------------------------------------------------------
>
> Key: HDFS-16566
> URL: https://issues.apache.org/jira/browse/HDFS-16566
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: ec, erasure-coding
> Affects Versions: 3.3.2
> Reporter: Ruinan Gu
> Priority: Major
> Labels: pull-request-available
> Fix For: 3.4.0
>
> Time Spent: 4h 20m
> Remaining Estimate: 0h
>
> Simple case:
> RS3-2 ,[0(busy),2,3,4] (1 missing),0 is busy.
> We can get liveblockIndice=[2,3,4], additionalRepl=1.So the DN will get the
> LiveBitSet=[2,3,4] and targets.length=1.
> According to StripedWriter.initTargetIndices(), 0 will get recovered instead
> of 1. So the internal blocks will become [0(busy),2,3,4,0'(excess)].Although
> NN will detect, delete the excess replicas and recover the missing block(1)
> correctly after the wrong recovery of 0', I don't think this process is
> expected and the recovery of 0' is obviously wrong and not necessary.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]