| DatanodeStorageInfo(DatanodeDescriptor, String, StorageType, DatanodeStorage.State) |  | 0% | | n/a | 1 | 1 | 12 | 12 | 1 | 1 |
| addBlock(BlockInfo, Block) |  | 0% |  | 0% | 3 | 3 | 11 | 11 | 1 | 1 |
| toStorageIDs(DatanodeStorageInfo[]) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| toStorageTypes(DatanodeStorageInfo[]) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| toStorageReport() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getDatanodeStorageInfo(Iterable, DatanodeDescriptor) |  | 0% |  | 0% | 4 | 4 | 7 | 7 | 1 | 1 |
| toDatanodeInfos(List) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| incrementBlocksScheduled(DatanodeStorageInfo[]) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| decrementBlocksScheduled(DatanodeStorageInfo[]) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| toDatanodeDescriptors(DatanodeStorageInfo[]) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| removeBlock(BlockInfo) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| updateState(StorageReport) |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
| equals(Object) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| receivedBlockReport() |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| insertToList(BlockInfo) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| setUtilizationForTesting(long, long, long, long) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| toString() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| areBlocksOnFailedStorage() |  | 0% |  | 0% | 3 | 3 | 1 | 1 | 1 | 1 |
| moveBlockToHead(BlockInfo, int, int) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| DatanodeStorageInfo(DatanodeDescriptor, DatanodeStorage) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| updateFromStorage(DatanodeStorage) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| toDatanodeInfos(DatanodeStorageInfo[]) |  | 0% |  | 0% | 2 | 2 | 1 | 1 | 1 | 1 |
| markStaleAfterFailover() |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| receivedHeartbeat(StorageReport) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| getBlockIterator() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| addBlock(BlockInfo) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| toStorageTypes(Iterable) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setRemainingForTests(int) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setBlockReportCount(int) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setBlockContentsStale(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setState(DatanodeStorage.State) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setHeartbeatedSinceFailover(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| hashCode() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| static {...} |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getBlockReportCount() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| hasReceivedBlockReport() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| areBlockContentsStale() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getState() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getStorageID() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getStorageType() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getCapacity() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getDfsUsed() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNonDfsUsed() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRemaining() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getBlockPoolUsed() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| numBlocks() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getBlockListHeadForTesting() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getDatanodeDescriptor() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |