| checkAndUpdate(String, FsVolumeSpi.ScanInfo) |  | 0% |  | 0% | 48 | 48 | 148 | 148 | 1 | 1 |
| removeVolumes(Collection, boolean) |  | 0% |  | 0% | 11 | 11 | 47 | 47 | 1 | 1 |
| FsDatasetImpl(DataNode, DataStorage, Configuration) |  | 0% |  | 0% | 9 | 9 | 51 | 51 | 1 | 1 |
| createTemporary(StorageType, String, ExtendedBlock, boolean) |  | 0% |  | 0% | 16 | 16 | 52 | 52 | 1 | 1 |
| invalidate(String, Block[], boolean) |  | 0% |  | 0% | 13 | 13 | 37 | 37 | 1 | 1 |
| removeReplicaFromMem(ExtendedBlock, FsVolumeImpl) |  | 0% |  | 0% | 14 | 14 | 46 | 46 | 1 | 1 |
| createRbw(StorageType, String, ExtendedBlock, boolean, long) |  | 0% |  | 0% | 13 | 13 | 43 | 43 | 1 | 1 |
| activateVolume(ReplicaMap, Storage.StorageDirectory, StorageType, FsVolumeReference) |  | 0% |  | 0% | 5 | 5 | 31 | 31 | 1 | 1 |
| updateReplicaUnderRecovery(ExtendedBlock, long, long, long) |  | 0% |  | 0% | 15 | 15 | 30 | 30 | 1 | 1 |
| convertTemporaryToRbw(ExtendedBlock) |  | 0% |  | 0% | 8 | 8 | 31 | 31 | 1 | 1 |
| moveBlockAcrossStorage(ExtendedBlock, StorageType, String) |  | 0% |  | 0% | 10 | 10 | 36 | 36 | 1 | 1 |
| recoverRbwImpl(ReplicaInPipeline, ExtendedBlock, long, long, long) |  | 0% |  | 0% | 8 | 8 | 32 | 32 | 1 | 1 |
| initReplicaRecoveryImpl(String, ReplicaMap, Block, long) |  | 0% |  | 0% | 12 | 12 | 33 | 33 | 1 | 1 |
| cacheBlock(String, long) |  | 0% |  | 0% | 12 | 12 | 37 | 37 | 1 | 1 |
| addBlockPool(String, Configuration) |  | 0% |  | 0% | 5 | 5 | 27 | 27 | 1 | 1 |
| computeChecksum(ReplicaInfo, File, int, Configuration) |  | 0% |  | 0% | 7 | 7 | 34 | 34 | 1 | 1 |
| finalizeReplica(String, ReplicaInfo) |  | 0% |  | 0% | 9 | 9 | 28 | 28 | 1 | 1 |
| addVolume(StorageLocation, List) |  | 0% |  | 0% | 3 | 3 | 32 | 32 | 1 | 1 |
| append(ExtendedBlock, long, long) |  | 0% |  | 0% | 4 | 4 | 21 | 21 | 1 | 1 |
| updateReplicaUnderRecovery(String, ReplicaInfo, long, long, long) |  | 0% |  | 0% | 9 | 9 | 21 | 21 | 1 | 1 |
| recoverRbw(ExtendedBlock, long, long, long) |  | 0% |  | 0% | 4 | 4 | 21 | 21 | 1 | 1 |
| hardLinkBlockFiles(ReplicaInfo, File, File) |  | 0% |  | 0% | 2 | 2 | 18 | 18 | 1 | 1 |
| recoverCheck(ExtendedBlock, long, long) |  | 0% |  | 0% | 10 | 10 | 21 | 21 | 1 | 1 |
| getBlockLocalPathInfo(ExtendedBlock) |  | 0% |  | 0% | 4 | 4 | 19 | 19 | 1 | 1 |
| recoverAppend(ExtendedBlock, long, long) |  | 0% |  | 0% | 2 | 2 | 20 | 20 | 1 | 1 |
| finalizeBlock(ExtendedBlock, boolean) |  | 0% |  | 0% | 8 | 8 | 22 | 22 | 1 | 1 |
| append(String, ReplicaInfo, long, long) |  | 0% |  | 0% | 3 | 3 | 16 | 16 | 1 | 1 |
| unfinalizeBlock(ExtendedBlock) |  | 0% |  | 0% | 6 | 6 | 18 | 18 | 1 | 1 |
| getBlockReports(String) |  | 0% |  | 0% | 3 | 3 | 15 | 15 | 1 | 1 |
| recoverClose(ExtendedBlock, long, long) |  | 0% |  | 0% | 2 | 2 | 14 | 14 | 1 | 1 |
| getTmpInputStreams(ExtendedBlock, long, long) |  | 0% | | n/a | 1 | 1 | 15 | 15 | 1 | 1 |
| copyBlockFiles(ReplicaInfo, File, File, boolean, int, Configuration) |  | 0% |  | 0% | 4 | 4 | 15 | 15 | 1 | 1 |
| getVolumeInfoMap() |  | 0% |  | 0% | 2 | 2 | 13 | 13 | 1 | 1 |
| moveBlockFiles(Block, ReplicaInfo, File) |  | 0% |  | 0% | 2 | 2 | 17 | 17 | 1 | 1 |
| deleteBlockPool(String, boolean) |  | 0% |  | 0% | 5 | 5 | 18 | 18 | 1 | 1 |
| onCompleteLazyPersist(String, long, long, File[], FsVolumeImpl) |  | 0% |  | 0% | 2 | 2 | 11 | 11 | 1 | 1 |
| getBlockInputStream(ExtendedBlock, long) |  | 0% |  | 0% | 4 | 4 | 10 | 10 | 1 | 1 |
| getVolumeFailureSummary() |  | 0% |  | 0% | 4 | 4 | 15 | 15 | 1 | 1 |
| lambda$getBlockReports$3(Map, Set, Iterator) |  | 0% |  | 0% | 9 | 9 | 19 | 19 | 1 | 1 |
| getStorageReports(String) |  | 0% |  | 0% | 2 | 2 | 17 | 17 | 1 | 1 |
| shutdown() |  | 0% |  | 0% | 7 | 7 | 20 | 20 | 1 | 1 |
| getStoredBlock(String, long) |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
| checkBlock(ExtendedBlock, long, HdfsServerConstants.ReplicaState) |  | 0% |  | 0% | 5 | 5 | 12 | 12 | 1 | 1 |
| getReplicaVisibleLength(ExtendedBlock) |  | 0% |  | 0% | 2 | 2 | 8 | 8 | 1 | 1 |
| getVolumeInfo() |  | 0% |  | 0% | 2 | 2 | 17 | 17 | 1 | 1 |
| checkReplicaFiles(ReplicaInfo) |  | 0% |  | 0% | 5 | 5 | 10 | 10 | 1 | 1 |
| addVolume(Storage.StorageDirectory) |  | 0% | | n/a | 1 | 1 | 15 | 15 | 1 | 1 |
| getInitialVolumeFailureInfos(Collection, DataStorage) |  | 0% |  | 0% | 3 | 3 | 13 | 13 | 1 | 1 |
| getBlockInputStreamWithCheckingPmemCache(ReplicaInfo, ExtendedBlock, long) |  | 0% |  | 0% | 3 | 3 | 12 | 12 | 1 | 1 |
| initReplicaRecovery(String, ReplicaMap, Block, long, long) |  | 0% |  | 0% | 2 | 2 | 10 | 10 | 1 | 1 |
| initReplicaRecovery(String, ReplicaMap, Block, long, long, DataSetLockManager) |  | 0% |  | 0% | 2 | 2 | 10 | 10 | 1 | 1 |
| moveBlockAcrossVolumes(ExtendedBlock, FsVolumeSpi) |  | 0% |  | 0% | 3 | 3 | 11 | 11 | 1 | 1 |
| invalidateMissingBlock(String, Block, boolean) |  | 0% |  | 0% | 5 | 5 | 7 | 7 | 1 | 1 |
| getFailedStorageLocations() |  | 0% |  | 0% | 2 | 2 | 7 | 7 | 1 | 1 |
| contains(ExtendedBlock) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| setupAsyncLazyPersistThread(FsVolumeImpl) |  | 0% |  | 0% | 8 | 8 | 10 | 10 | 1 | 1 |
| stopAllDataxceiverThreads(FsVolumeImpl) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| getReplicaInfo(ExtendedBlock) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| shouldConsiderSameMountVolume(FsVolumeSpi, StorageType, String) |  | 0% |  | 0% | 8 | 8 | 10 | 10 | 1 | 1 |
| removeDeletedBlocks(String, Set) |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
| getLastVolumeFailureDate() |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| addDeletingBlock(String, Long) |  | 0% |  | 0% | 2 | 2 | 8 | 8 | 1 | 1 |
| getVolume(ExtendedBlock) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| adjustCrcChannelPosition(ExtendedBlock, ReplicaOutputStreams, int) |  | 0% |  | 0% | 2 | 2 | 8 | 8 | 1 | 1 |
| lambda$removeVolumes$2(StorageLocation, List, Iterator) |  | 0% |  | 0% | 3 | 3 | 10 | 10 | 1 | 1 |
| shutdownBlockPool(String) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| reserveLockedMemory(long) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| fetchReplicaInfo(String, long) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| getEstimatedCapacityLostTotal() |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| moveBlock(ExtendedBlock, ReplicaInfo, FsVolumeReference, boolean) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| cleanupReplica(String, ReplicaInfo) |  | 0% |  | 0% | 5 | 5 | 6 | 6 | 1 | 1 |
| invalidate(String, ReplicaInfo) |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
| lambda$stopAllDataxceiverThreads$5(FsVolumeImpl, Iterator) |  | 0% |  | 0% | 5 | 5 | 9 | 9 | 1 | 1 |
| finalizeNewReplica(ReplicaInfo, ExtendedBlock) |  | 0% | | n/a | 1 | 1 | 10 | 10 | 1 | 1 |
| validateBlockFile(String, long) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| getReplicaString(String, long) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| removeOldReplica(ReplicaInfo, ReplicaInfo, String) |  | 0% | | n/a | 1 | 1 | 8 | 8 | 1 | 1 |
| hasEnoughResource() |  | 0% |  | 0% | 4 | 4 | 3 | 3 | 1 | 1 |
| copyBlockFiles(long, long, ReplicaInfo, File, boolean, int, Configuration) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
| registerMBean(String) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| delBlockFromDisk(ReplicaInfo, String) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| isDeletingBlock(String, long) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| static {...} |  | 0% |  | 0% | 4 | 4 | 6 | 6 | 1 | 1 |
| lambda$getFinalizedBlocks$4(ArrayList, Iterator) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| hardLinkBlockFiles(long, long, ReplicaInfo, File) |  | 0% | | n/a | 1 | 1 | 4 | 4 | 1 | 1 |
| onFailLazyPersist(String, long) |  | 0% |  | 0% | 2 | 2 | 6 | 6 | 1 | 1 |
| ramDiskConfigured() |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| createFsVolume(String, Storage.StorageDirectory, StorageLocation) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| getMetaDataInputStream(ExtendedBlock) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| getReplicaInfo(String, long) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| initReplicaRecovery(BlockRecoveryCommand.RecoveringBlock) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| setupAsyncLazyPersistThreads() |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| uncache(String, long[]) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| getBlockReplica(String, long) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| copyReplicaToVolume(ExtendedBlock, ReplicaInfo, FsVolumeReference) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| cache(String, long[]) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| getPinning(ExtendedBlock) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| releaseLockedMemory(long, boolean) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| isReplicaProvided(ReplicaInfo) |  | 0% |  | 0% | 3 | 3 | 3 | 3 | 1 | 1 |
| submitBackgroundSyncFileRangeRequest(ExtendedBlock, ReplicaOutputStreams, long, long, int) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| setPinning(ExtendedBlock) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| evictLazyPersistBlocks(long) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| lambda$deepCopyReplica$0(Set, Iterator) |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| deepCopyReplica(String) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| getMetrics(MetricsCollector, boolean) |  | 0% | | n/a | 1 | 1 | 6 | 6 | 1 | 1 |
| getFinalizedBlocks(String) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| moveReplicaToVolumeOnSameMount(ExtendedBlock, ReplicaInfo, FsVolumeReference) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| isValid(ExtendedBlock, HdfsServerConstants.ReplicaState) |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| isValidBlock(ExtendedBlock) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| isValidRbw(ExtendedBlock) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| getStorageUuidForLock(ExtendedBlock) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| createRbw(StorageType, String, ExtendedBlock, boolean) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getFsVolumeReferences() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getBlockReplica(ExtendedBlock) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getStorage(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| invalidate(String, Block[]) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| invalidateMissingBlock(String, Block) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| isCached(String, long) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getReplica(String, long) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getBlockPoolUsed(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNumFailedVolumes() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getLength(ExtendedBlock) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getCacheReport(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| handleVolumeFailures(Set) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| toString() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| enableTrash(String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| clearTrash(String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| trashEnabled(String) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setRollingUpgradeMarker(String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| clearRollingUpgradeMarker(String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getVolumeCount() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getDfsUsed() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getCapacity() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getRemaining() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getCacheUsed() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getCacheCapacity() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNumBlocksFailedToCache() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNumBlocksFailedToUncache() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNumBlocksCached() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getMountVolumeMap() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getNonPersistentReplicas() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setTimer(Timer) | | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getBPServiceCount() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getVolumeList() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setLastDirScannerFinishTime(long) | | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getPendingAsyncDeletions() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| lambda$removeVolumes$1(String) | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| acquireDatasetLockManager() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getStorageInfo() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| setBlockPoolId(String) | | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getLastDirScannerFinishTime() | | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |