|
@@ -2135,17 +2135,18 @@ public class BlockManager {
|
|
|
* Mark block replicas as corrupt except those on the storages in
|
|
|
* newStorages list.
|
|
|
*/
|
|
|
- public void markBlockReplicasAsCorrupt(BlockInfoContiguous block,
|
|
|
+ public void markBlockReplicasAsCorrupt(Block oldBlock,
|
|
|
+ BlockInfo block,
|
|
|
long oldGenerationStamp, long oldNumBytes,
|
|
|
DatanodeStorageInfo[] newStorages) throws IOException {
|
|
|
assert namesystem.hasWriteLock();
|
|
|
BlockToMarkCorrupt b = null;
|
|
|
if (block.getGenerationStamp() != oldGenerationStamp) {
|
|
|
- b = new BlockToMarkCorrupt(block, oldGenerationStamp,
|
|
|
+ b = new BlockToMarkCorrupt(oldBlock, block, oldGenerationStamp,
|
|
|
"genstamp does not match " + oldGenerationStamp
|
|
|
+ " : " + block.getGenerationStamp(), Reason.GENSTAMP_MISMATCH);
|
|
|
} else if (block.getNumBytes() != oldNumBytes) {
|
|
|
- b = new BlockToMarkCorrupt(block,
|
|
|
+ b = new BlockToMarkCorrupt(oldBlock, block,
|
|
|
"length does not match " + oldNumBytes
|
|
|
+ " : " + block.getNumBytes(), Reason.SIZE_MISMATCH);
|
|
|
} else {
|