[ 
https://issues.apache.org/jira/browse/HDFS-9173?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Walter Su updated HDFS-9173:
----------------------------
    Attachment: HDFS-9173.03.patch

bq. can we just sort all replica lengths and take the 6th shortest one?
Done.
bq. Another way is to add a new method in InterDatanodeProtocol for getting the 
replica information.
I tried before, to add a new method 
{{InterDatanodeProtocol.getReplicaRecoveryInfo(RecoveringBlock)}}. But
1. I don't need to get all rInfo from all DNs. As long as one DN returns 
{{RecoveryInProgressException}}. I abort the recovery task. So I don't need a 
{{get}} method, I need a {{check}} method.
2. Most logic of {{FsDatasetImpl.initReplicaRecovery(..)}} is for checking. The 
new method is redundant.
3. If I add a new method, I also need to add 2 protos, similar to 
{{InitReplicaRecoveryRequestProto}} and {{InitReplicaRecoveryResponseProto}}.
 
bq. Besides the changes on initReplicaRecovery, other changes in 
InterDatanodeProtocol is unnecessary.
Reverted in 03 patch. However, I think the modifier "public static final" is 
useless in {{interface}}.
 
bq. Thus the storage information reported back to NN in 
commitBlockSynchronization should be based on the result of 
updateReplicaUnderRecovery.
Done.
 
bq. the changes on RecoveringBlock's constructor methods seem unnecessary.
It's for step 3. It's reverted in 03 patch.
 
bq. Maybe more unit tests on the getSafeLength method.
Done.

> Erasure Coding: Lease recovery for striped file
> -----------------------------------------------
>
>                 Key: HDFS-9173
>                 URL: https://issues.apache.org/jira/browse/HDFS-9173
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>            Reporter: Walter Su
>            Assignee: Walter Su
>         Attachments: HDFS-9173.00.wip.patch, HDFS-9173.01.patch, 
> HDFS-9173.02.step125.patch, HDFS-9173.03.patch
>
>




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

Reply via email to