| awaitResponses(boolean) |   | 36% |   | 33% | 3 | 4 | 7 | 16 | 0 | 1 |
| awaitReadRepair() |   | 16% |  | 0% | 1 | 2 | 5 | 8 | 0 | 1 |
| shouldSpeculateAndMaybeWait() |   | 50% |   | 50% | 3 | 5 | 4 | 7 | 0 | 1 |
| getReadExecutor(SinglePartitionReadCommand, ConsistencyLevel, long) |   | 77% |   | 60% | 3 | 6 | 3 | 14 | 0 | 1 |
| makeRequests(ReadCommand, Iterable) |   | 75% |   | 55% | 6 | 10 | 1 | 18 | 0 | 1 |
| getKey() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| makeDigestRequests(Iterable) |   | 76% |   | 50% | 1 | 2 | 0 | 3 | 0 | 1 |
| makeFullDataRequests(ReplicaCollection) |   | 73% |   | 50% | 1 | 2 | 0 | 3 | 0 | 1 |
| maybeSendAdditionalDataRequests() |   | 50% |   | 50% | 1 | 2 | 2 | 4 | 0 | 1 |
| awaitResponses() |  | 0% | | n/a | 1 | 1 | 2 | 2 | 1 | 1 |
| lambda$executeAsync$0(EndpointsForToken, Replica) |   | 81% |   | 50% | 2 | 3 | 0 | 1 | 0 | 1 |
| setResult(PartitionIterator) |   | 94% |   | 50% | 1 | 2 | 0 | 3 | 0 | 1 |
| getResult() |   | 90% |   | 50% | 1 | 2 | 0 | 2 | 0 | 1 |
| hasLocalRead() |   | 88% |   | 50% | 1 | 2 | 0 | 1 | 0 | 1 |
| isDone() |   | 85% |   | 50% | 1 | 2 | 0 | 1 | 0 | 1 |
| AbstractReadExecutor(ColumnFamilyStore, ReadCommand, ReplicaPlan.ForTokenRead, int, long) |  | 100% |  | 100% | 0 | 2 | 0 | 16 | 0 | 1 |
| executeAsync() |  | 100% | | n/a | 0 | 1 | 0 | 6 | 0 | 1 |
| makeTransientDataRequests(Iterable) |  | 100% | | n/a | 0 | 1 | 0 | 2 | 0 | 1 |
| replicaPlan() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| static {...} |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| getReadRepair() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |
| onReadTimeout() |  | 100% | | n/a | 0 | 1 | 0 | 1 | 0 | 1 |