| DeadNodeDetector(String, Configuration) |  | 0% |  | 0% | 2 | 2 | 29 | 29 | 1 | 1 |
| scheduleProbe(DeadNodeDetector.ProbeType) |  | 0% |  | 0% | 7 | 7 | 20 | 20 | 1 | 1 |
| probeCallBack(DeadNodeDetector.Probe, boolean) |  | 0% |  | 0% | 5 | 5 | 17 | 17 | 1 | 1 |
| clearAndGetDetectedDeadNodes() |  | 0% |  | 0% | 4 | 4 | 9 | 9 | 1 | 1 |
| work() |  | 0% |  | 0% | 6 | 6 | 19 | 19 | 1 | 1 |
| removeNodeFromDeadNodeDetector(DatanodeInfo) |  | 0% |  | 0% | 4 | 4 | 9 | 9 | 1 | 1 |
| addNodeToDetect(DFSInputStream, DatanodeInfo) |  | 0% |  | 0% | 2 | 2 | 10 | 10 | 1 | 1 |
| startProbeScheduler() |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| checkDeadNodes() |  | 0% |  | 0% | 3 | 3 | 8 | 8 | 1 | 1 |
| isThreadsShutdown() |  | 0% |  | 0% | 7 | 7 | 5 | 5 | 1 | 1 |
| removeNodeFromDeadNodeDetector(DFSInputStream, DatanodeInfo) |  | 0% |  | 0% | 3 | 3 | 7 | 7 | 1 | 1 |
| shutdown() |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| idle() |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| threadShutDown(Thread) |  | 0% |  | 0% | 3 | 3 | 6 | 6 | 1 | 1 |
| probeSleep(long) |  | 0% | | n/a | 1 | 1 | 7 | 7 | 1 | 1 |
| addToDead(DatanodeInfo) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| removeFromDead(DatanodeInfo) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| removeDeadNode(DatanodeInfo) |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| isDeadNode(DatanodeInfo) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| static {...} |  | 0% | | n/a | 1 | 1 | 3 | 3 | 1 | 1 |
| addSuspectNodeToDetect(DatanodeInfo) |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| init() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setSuspectQueue(DeadNodeDetector.UniqueQueue) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setDeadQueue(DeadNodeDetector.UniqueQueue) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| setDisabledProbeThreadForTest(boolean) |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| getDeadNodesProbeQueue() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |
| getSuspectNodesProbeQueue() |  | 0% | | n/a | 1 | 1 | 1 | 1 | 1 | 1 |