[
https://issues.apache.org/jira/browse/HDFS-11576?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16047457#comment-16047457
]
Konstantin Shvachko commented on HDFS-11576:
--------------------------------------------
Hey [~lukmajercak], I think you are on the right path with tracking block
recovery times. Few comments:
# Recovery timeout should be a function (x60) of the heartbeat interval, not a
config parameter. 3 min sounds reasonable.
# How about {{PendingRecoveryBlocks}} instead of {{UnderRecoveryBlocks}}?
# Do we even need a new collection to track block recovery? Can we just add
them to {{PendingReconstructionBlocks}}? It’s a thought, I did not check if we
can.
# If we do need a new collection, then it would be good to make methods names
more consistent / intuitive. If you _start_ something then you _finish_ it. Not
clear how {{addRecoveryAttempt()}} differs from {{startRecoveryAttempt()}}, and
why it is not relater {{remove()}}.
> Block recovery will fail indefinitely if recovery time > heartbeat interval
> ---------------------------------------------------------------------------
>
> Key: HDFS-11576
> URL: https://issues.apache.org/jira/browse/HDFS-11576
> Project: Hadoop HDFS
> Issue Type: Bug
> Components: datanode, hdfs, namenode
> Affects Versions: 2.7.1, 2.7.2, 2.7.3, 3.0.0-alpha1, 3.0.0-alpha2
> Reporter: Lukas Majercak
> Assignee: Lukas Majercak
> Priority: Critical
> Labels: release-blocker
> Attachments: HDFS-11576.001.patch, HDFS-11576.002.patch,
> HDFS-11576.003.patch, HDFS-11576.004.patch, HDFS-11576.005.patch,
> HDFS-11576.006.patch, HDFS-11576.007.patch, HDFS-11576.repro.patch
>
>
> Block recovery will fail indefinitely if the time to recover a block is
> always longer than the heartbeat interval. Scenario:
> 1. DN sends heartbeat
> 2. NN sends a recovery command to DN, recoveryID=X
> 3. DN starts recovery
> 4. DN sends another heartbeat
> 5. NN sends a recovery command to DN, recoveryID=X+1
> 6. DN calls commitBlockSyncronization after succeeding with first recovery to
> NN, which fails because X < X+1
> ...
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]