| updateStorageStats(StorageReport[], long, long, int, int, VolumeFailureSummary) |  | 0% |  | 0% | 18 | 18 | 62 | 62 | 1 | 1 |
| updateStorage(DatanodeStorage) |  | 0% |  | 0% | 13 | 13 | 24 | 24 | 1 | 1 |
| DatanodeDescriptor(DatanodeID, String) |  | 0% | | n/a | 1 | 1 | 26 | 26 | 1 | 1 |
| DatanodeDescriptor(DatanodeID) |  | 0% | | n/a | 1 | 1 | 26 | 26 | 1 | 1 |
| pruneStorageMap(StorageReport[]) |  | 0% |  | 0% | 6 | 6 | 22 | 22 | 1 | 1 |
| chooseStorage4Block(StorageType, long, int) |  | 0% |  | 0% | 7 | 7 | 16 | 16 | 1 | 1 |
| dumpDatanode() |  | 0% |  | 0% | 6 | 6 | 17 | 17 | 1 | 1 |
| injectStorage(DatanodeStorageInfo) |  | 0% |  | 0% | 7 | 7 | 16 | 16 | 1 | 1 |
| addBlockToBeErasureCoded(ExtendedBlock, DatanodeDescriptor[], DatanodeStorageInfo[], byte[], byte[], ErasureCodingPolicy) |  | 0% |  | 0% | 5 | 5 | 6 | 6 | 1 | 1 |
| addBlocksToBeInvalidated(List) |  | 0% |  | 0% | 5 | 5 | 7 | 7 | 1 | 1 |
| hasStaleStorages() |  | 0% |  | 0% | 4 | 4 | 8 | 8 | 1 | 1 |
| updateRegInfo(DatanodeID) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| resetBlocks() |  | 0% | | n/a | 1 | 1 | 9 | 9 | 1 | 1 |
| clearBlockQueues() |  | 0% | | n/a | 1 | 1 | 11 | 11 | 1 | 1 |
| checkBlockReportReceived() |  | 0% |  | 0% | 4 | 4 | 6 | 6 | 1 | 1 |
| getStorageTypes() |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| numBlocks() |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| decrementBlocksScheduled(StorageType) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| getInvalidateBlocks(int) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| hasStorageType(StorageType) |  | 0% |  | 0% | 3 | 3 | 4 | 4 | 1 | 1 |
| getStorageReports() |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| updateFailedStorage(Set) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| addBlockToBeReplicated(Block, DatanodeStorageInfo[]) |  | 0% |  | 0% | 5 | 5 | 3 | 3 | 1 | 1 |
| addECBlockToBeReplicated(Block, DatanodeStorageInfo[]) |  | 0% |  | 0% | 5 | 5 | 3 | 3 | 1 | 1 |
| updateHeartbeatState(StorageReport[], long, long, int, int, VolumeFailureSummary) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| rollBlocksScheduled(long) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| getStorageInfos() |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| addBlockToBeRecovered(BlockInfo) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| getLeaseRecoveryCommand(int) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| static {...} |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getStorageInfo(String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| updateHeartbeat(StorageReport[], long, long, int, int, VolumeFailureSummary) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| containsInvalidateBlock(Block) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getNumberOfBlocksToBeReplicated() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getBlocksScheduled(StorageType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| equals(Object) |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
| isRegistered() |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
| getBlocksScheduled() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getBlockIterator(int) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| incrementPendingReplicationWithoutTargets() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| decrementPendingReplicationWithoutTargets() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getBlockIterator(int, DatanodeStorageInfo[]) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| incrementBlocksScheduled(StorageType) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getReplicationCommand(int) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getECReplicatedCommand(int) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getErasureCodeCommand(int) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setAlive(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setNeedKeyUpdate(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getBlockIterator() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNumberOfBlocksToBeErasureCoded() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNumberOfECBlocksToBeReplicated() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNumberOfReplicateBlocks() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setDisallowed(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setBalancerBandwidth(long) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setLastCachingDirectiveSentTimeMs(long) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setForceRegistration(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getPendingCached() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getCached() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getPendingUncached() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| isAlive() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| needKeyUpdate() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getLeavingServiceStatus() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| isHeartbeatedSinceRegistration() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| hashCode() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| isDisallowed() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getVolumeFailures() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getVolumeFailureSummary() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNumVolumesAvailable() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getBalancerBandwidth() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getLastCachingDirectiveSentTimeMs() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |