| modifyCachePool(CachePoolInfo) |  | 0% |  | 0% | 11 | 11 | 46 | 46 | 1 | 1 |
| saveState() |  | 0% |  | 0% | 14 | 14 | 40 | 40 | 1 | 1 |
| listCacheDirectives(long, CacheDirectiveInfo, FSPermissionChecker) |  | 0% |  | 0% | 17 | 17 | 41 | 41 | 1 | 1 |
| loadState(CacheManager.PersistState) |  | 0% |  | 0% | 9 | 9 | 25 | 25 | 1 | 1 |
| modifyDirective(CacheDirectiveInfo, FSPermissionChecker, EnumSet) |  | 0% |  | 0% | 7 | 7 | 30 | 30 | 1 | 1 |
| CacheManager(FSNamesystem, Configuration, BlockManager) |  | 0% |  | 0% | 3 | 3 | 25 | 25 | 1 | 1 |
| processCacheReport(DatanodeID, List) |  | 0% |  | 0% | 5 | 5 | 19 | 19 | 1 | 1 |
| computeNeeded(String, short) |  | 0% |  | 0% | 6 | 6 | 27 | 27 | 1 | 1 |
| processCacheReportImpl(DatanodeDescriptor, List) |  | 0% |  | 0% | 5 | 5 | 22 | 22 | 1 | 1 |
| validateExpiryTime(CacheDirectiveInfo, long) |  | 0% |  | 0% | 7 | 7 | 21 | 21 | 1 | 1 |
| addDirective(CacheDirectiveInfo, FSPermissionChecker, EnumSet) |  | 0% |  | 0% | 4 | 4 | 18 | 18 | 1 | 1 |
| setCachedLocations(LocatedBlock) |  | 0% |  | 0% | 6 | 6 | 18 | 18 | 1 | 1 |
| removeCachePool(String) |  | 0% |  | 0% | 5 | 5 | 19 | 19 | 1 | 1 |
| removeInternal(CacheDirective) |  | 0% |  | 0% | 6 | 6 | 13 | 13 | 1 | 1 |
| listCachePools(FSPermissionChecker, String) |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
| addCachePool(CachePoolInfo) |  | 0% |  | 0% | 4 | 4 | 14 | 14 | 1 | 1 |
| addCacheDirective(String, CacheDirective) |  | 0% |  | 0% | 5 | 5 | 9 | 9 | 1 | 1 |
| addInternal(CacheDirective, CachePool) |  | 0% |  | 0% | 3 | 3 | 11 | 11 | 1 | 1 |
| createFromInfoAndDefaults(CacheDirectiveInfo, CacheDirective) |  | 0% |  | 0% | 5 | 5 | 11 | 11 | 1 | 1 |
| checkLimit(CachePool, String, short) |  | 0% |  | 0% | 3 | 3 | 9 | 9 | 1 | 1 |
| removeDirective(long, FSPermissionChecker) |  | 0% |  | 0% | 3 | 3 | 10 | 10 | 1 | 1 |
| addDirectiveFromEditLog(CacheDirectiveInfo) |  | 0% |  | 0% | 2 | 2 | 7 | 7 | 1 | 1 |
| modifyDirectiveFromEditLog(CacheDirectiveInfo) |  | 0% |  | 0% | 2 | 2 | 8 | 8 | 1 | 1 |
| startMonitorThread() |  | 0% |  | 0% | 3 | 3 | 9 | 9 | 1 | 1 |
| getNextDirectiveId() |  | 0% |  | 0% | 4 | 4 | 4 | 4 | 1 | 1 |
| clearDirectiveStats() |  | 0% |  | 0% | 4 | 4 | 5 | 5 | 1 | 1 |
| getById(long) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| validatePath(CacheDirectiveInfo) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| stopMonitorThread() |  | 0% |  | 0% | 3 | 3 | 9 | 9 | 1 | 1 |
| validatePoolName(CacheDirectiveInfo) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| setCachedLocations(LocatedBlocks) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| validateReplication(CacheDirectiveInfo, short) |  | 0% |  | 0% | 3 | 3 | 5 | 5 | 1 | 1 |
| getCachePools() |  | 0% |  | 0% | 3 | 3 | 2 | 2 | 1 | 1 |
| getCacheDirectives() |  | 0% |  | 0% | 3 | 3 | 2 | 2 | 1 | 1 |
| getCachePool(String) |  | 0% |  | 0% | 2 | 2 | 4 | 4 | 1 | 1 |
| getCachedBlocks() |  | 0% |  | 0% | 3 | 3 | 2 | 2 | 1 | 1 |
| clear() |  | 0% | | n/a | 1 | 1 | 5 | 5 | 1 | 1 |
| waitForRescanIfNeeded() |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| setNeedsRescan() |  | 0% |  | 0% | 2 | 2 | 5 | 5 | 1 | 1 |
| getCacheReplicationMonitor() |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| static {...} |  | 0% |  | 0% | 2 | 2 | 2 | 2 | 1 | 1 |
| checkWritePermission(FSPermissionChecker, CachePool) |  | 0% |  | 0% | 2 | 2 | 3 | 3 | 1 | 1 |
| saveStateCompat(DataOutputStream, String) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| loadStateCompat(DataInput) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| isEnabled() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| isCheckLockTimeEnable() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getMaxLockTimeMs() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getSleepTimeMs() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |