Fix "nodetool repair" error
The existing scylla-jmx code had reversed logic for the success of the repair: it reported to "nodetool repair" a failure when the repair was successful :-) Note that "nodetool repair" waits until a FINISHED notification, and then reports a failure if it previously got any SESSION_FAILED notification; So if repair was successful, all we need to do is to avoid sending a "SESSION_FAILED" message. But we don't need to send any additional "SESSION_SUCCESS" message to signal success. That message type is only used to report progress to the user (a "session" is part of the repair work, so seeing sessions completing shows progress), but because Scylla doesn't support this progress report yet, we can't send these notifications yet, and there's no point in sending one such message at the end - it's only confusing (especially when the text is the same as that of the FINISHED message). Signed-off-by: Nadav Har'El <nyh@cloudius-systems.com>
This commit is contained in:
parent
d8b7149292
commit
f05c6709dd
|
@ -542,8 +542,6 @@ public class StorageService extends NotificationBroadcasterSupport
|
||||||
if (!status.equals("RUNNING")) {
|
if (!status.equals("RUNNING")) {
|
||||||
cancel();
|
cancel();
|
||||||
if (!status.equals("SUCCESSFUL")) {
|
if (!status.equals("SUCCESSFUL")) {
|
||||||
sendNotification("repair", message + "finished", new int[]{cmd, RepairStatus.SESSION_SUCCESS.ordinal()});
|
|
||||||
} else {
|
|
||||||
sendNotification("repair", message + "failed", new int[]{cmd, RepairStatus.SESSION_FAILED.ordinal()});
|
sendNotification("repair", message + "failed", new int[]{cmd, RepairStatus.SESSION_FAILED.ordinal()});
|
||||||
}
|
}
|
||||||
sendNotification("repair", message + "finished", new int[]{cmd, RepairStatus.FINISHED.ordinal()});
|
sendNotification("repair", message + "finished", new int[]{cmd, RepairStatus.FINISHED.ordinal()});
|
||||||
|
|
Loading…
Reference in New Issue
Block a user