Details
-
Sub-task
-
Status: Resolved
-
Major
-
Resolution: Duplicate
-
None
-
None
-
None
-
None
Description
private boolean invalidateBlock(BlockToMarkCorrupt b, DatanodeInfo dn ) throws IOException { .. } else if (nr.liveReplicas() >= 1) { // If we have at least one copy on a live node, then we can delete it. addToInvalidates(b.corrupted, dn); removeStoredBlock(b.stored, node);
We don't delete corrupted block if all we left is corrupted block. We give user the decision. So user has chance to recover it manually.
We should not compare liveReplicas() of Striped block with "1". The logic need update.
Attachments
Issue Links
- is related to
-
HDFS-8483 Erasure coding: test DataNode reporting bad/corrupted blocks which belongs to a striped block.
- Resolved