| testChooseReplicasToDelete() |  | 0% |  | 0% | 2 | 2 | 67 | 67 | 1 | 1 |
| testChooseTargetWithMoreThanHalfStaleNodes() |  | 0% |  | 0% | 4 | 4 | 64 | 64 | 1 | 1 |
| testConvertLastBlockToUnderConstructionDoesNotCauseSkippedReplication() |  | 0% |  | 0% | 3 | 3 | 45 | 45 | 1 | 1 |
| testChooseTarget2() |  | 0% |  | 0% | 7 | 7 | 48 | 48 | 1 | 1 |
| testChooseReplicaToDelete() |  | 0% |  | 0% | 2 | 2 | 37 | 37 | 1 | 1 |
| testAddStoredBlockDoesNotCauseSkippedReplication() |  | 0% | | n/a | 1 | 1 | 27 | 27 | 1 | 1 |
| testChooseLowRedundancyBlocks() |  | 0% |  | 0% | 2 | 2 | 24 | 24 | 1 | 1 |
| testStripedChooseReplicaToDelete() |  | 0% |  | 0% | 2 | 2 | 35 | 35 | 1 | 1 |
| testIsMovable() |  | 0% | | n/a | 1 | 1 | 25 | 25 | 1 | 1 |
| testChooseTargetWithHalfStaleNodes() |  | 0% |  | 0% | 3 | 3 | 29 | 29 | 1 | 1 |
| testMaxLoad() |  | 0% | | n/a | 1 | 1 | 33 | 33 | 1 | 1 |
| testChooseTarget3() |  | 0% |  | 0% | 4 | 4 | 25 | 25 | 1 | 1 |
| testChooseTarget1() |  | 0% |  | 0% | 3 | 3 | 23 | 23 | 1 | 1 |
| testUpdateDoesNotCauseSkippedReplication() |  | 0% | | n/a | 1 | 1 | 17 | 17 | 1 | 1 |
| testChoooseTarget4() |  | 0% |  | 0% | 5 | 5 | 20 | 20 | 1 | 1 |
| testRereplicate3() |  | 0% | | n/a | 1 | 1 | 20 | 20 | 1 | 1 |
| testChooseTarget6() |  | 0% | | n/a | 1 | 1 | 25 | 25 | 1 | 1 |
| testUseDelHint() |  | 0% | | n/a | 1 | 1 | 17 | 17 | 1 | 1 |
| testupdateNeededReplicationsDoesNotCauseSkippedReplication() |  | 0% | | n/a | 1 | 1 | 14 | 14 | 1 | 1 |
| testRereplicate1() |  | 0% | | n/a | 1 | 1 | 16 | 16 | 1 | 1 |
| testChooseExcessReplicaApartFromFavoredNodes() |  | 0% |  | 0% | 2 | 2 | 14 | 14 | 1 | 1 |
| testChooseTargetWithStaleNodes() |  | 0% | | n/a | 1 | 1 | 18 | 18 | 1 | 1 |
| testChooseTargetWithMoreThanAvailableNodes() |  | 0% |  | 0% | 3 | 3 | 15 | 15 | 1 | 1 |
| testChooseFromFavoredNodesWhenPreferLocalSetToFalse() |  | 0% |  | 0% | 2 | 2 | 13 | 13 | 1 | 1 |
| testRereplicate2() |  | 0% | | n/a | 1 | 1 | 13 | 13 | 1 | 1 |
| testReplicationWithPriority() |  | 0% |  | 0% | 2 | 2 | 19 | 19 | 1 | 1 |
| testChooseTarget5() |  | 0% | | n/a | 1 | 1 | 14 | 14 | 1 | 1 |
| testChosenFailureForNotEnoughStorageSpace() |  | 0% |  | 0% | 2 | 2 | 12 | 12 | 1 | 1 |
| getDatanodeDescriptors(Configuration) |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
| testGetInvalidateWorkPctPerIteration() |  | 0% |  | 0% | 2 | 2 | 13 | 13 | 1 | 1 |
| testChooseNodeWithMultipleStorages2() |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| testAvoidLocalWriteNoEnoughNodes() |  | 0% |  | 0% | 3 | 3 | 10 | 10 | 1 | 1 |
| testChooseNodeWithMultipleStorages1() |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| containsWithinRange(DatanodeStorageInfo, DatanodeDescriptor[], int, int) |  | 0% |  | 0% | 9 | 9 | 6 | 6 | 1 | 1 |
| containsWithinRange(DatanodeDescriptor, DatanodeStorageInfo[], int, int) |  | 0% |  | 0% | 9 | 9 | 6 | 6 | 1 | 1 |
| testChosenFailureForStorageType() |  | 0% | | n/a | 1 | 1 | 10 | 10 | 1 | 1 |
| testAvoidLocalWrite() |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| assertTheChosenBlocks(List, int[]) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| testGetReplWorkMultiplier() |  | 0% |  | 0% | 2 | 2 | 9 | 9 | 1 | 1 |
| resetHeartbeatForStorages() |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| testReduceChooseTimesIfNOStaleNode() |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| calculateRemaining(DatanodeDescriptor) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| testGetInvalidateWorkPctPerIteration_NegativeValue() |  | 0% |  | 0% | 2 | 2 | 7 | 7 | 1 | 1 |
| testGetInvalidateWorkPctPerIteration_GreaterThanOne() |  | 0% |  | 0% | 2 | 2 | 7 | 7 | 1 | 1 |
| data() |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| updateHeartbeatForExtraStorage(long, long, long, long) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| testChooseTargetWithMoreThanAvailableNodesWithStaleness() |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
| genBlockInfo(long, boolean) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| static {...} |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| chooseTarget(int, DatanodeDescriptor, Set, List, EnumSet) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| chooseTarget(int, DatanodeDescriptor, Set, List) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| TestReplicationPolicy(String) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| genBlockInfo(long) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$testGetReplWorkMultiplier$3(Configuration) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| lambda$testGetInvalidateWorkPctPerIteration_GreaterThanOne$2(Configuration) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| lambda$testGetInvalidateWorkPctPerIteration_NegativeValue$1(Configuration) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| lambda$testGetInvalidateWorkPctPerIteration$0(Configuration) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |