Search in sources :

Example 1 with ParentRepairStatus

use of org.apache.cassandra.service.ActiveRepairService.ParentRepairStatus in project cassandra by apache.

the class RepairRunner method queryForCompletedRepair.

private void queryForCompletedRepair(String triggeringCondition) {
    List<String> status = ssProxy.getParentRepairStatus(cmd);
    String queriedString = "queried for parent session status and";
    if (status == null) {
        String message = String.format("%s %s couldn't find repair status for cmd: %s", triggeringCondition, queriedString, cmd);
        printMessage(message);
    } else {
        ParentRepairStatus parentRepairStatus = valueOf(status.get(0));
        List<String> messages = status.subList(1, status.size());
        switch(parentRepairStatus) {
            case COMPLETED:
            case FAILED:
                printMessage(String.format("%s %s discovered repair %s.", triggeringCondition, queriedString, parentRepairStatus.name().toLowerCase()));
                if (parentRepairStatus == FAILED) {
                    error = new IOException(messages.get(0));
                }
                printMessages(messages);
                condition.signalAll();
                break;
            case IN_PROGRESS:
                break;
            default:
                printMessage(String.format("WARNING Encountered unexpected RepairRunnable.ParentRepairStatus: %s", parentRepairStatus));
                printMessages(messages);
                break;
        }
    }
}
Also used : ParentRepairStatus(org.apache.cassandra.service.ActiveRepairService.ParentRepairStatus) IOException(java.io.IOException)

Aggregations

IOException (java.io.IOException)1 ParentRepairStatus (org.apache.cassandra.service.ActiveRepairService.ParentRepairStatus)1