StorageService: Fix scrub() variant API wiring
The 'nodetool scrub' command ends up calling the variant that is not wired up to the Scylla API which causes the following error to be printed out to the user: [penberg@nero scylla-tools-java]$ ./bin/nodetool scrub error: For input string: "" -- StackTrace -- java.lang.NumberFormatException: For input string: "" at java.lang.NumberFormatException.forInputString(NumberFormatException.java:65) at java.lang.Integer.parseInt(Integer.java:592) at java.lang.Integer.parseInt(Integer.java:615) at com.scylladb.jmx.api.APIClient.getIntValue(APIClient.java:216) at com.scylladb.jmx.api.APIClient.getIntValue(APIClient.java:220) at org.apache.cassandra.service.StorageService.scrub(StorageService.java:1291) Fix the problem by implementing the said scrub() variant. Message-Id: <1458035736-26349-1-git-send-email-penberg@scylladb.com> (cherry picked from commit 2cd5a5f0487d95c908f60005945fed839ee01a53)
This commit is contained in:
parent
9c9d879a48
commit
9718d87e80
@ -549,6 +549,15 @@ public class StorageService extends NotificationBroadcasterSupport
|
||||
String keyspaceName, String... columnFamilies) throws IOException,
|
||||
ExecutionException, InterruptedException {
|
||||
log(" scrub(boolean disableSnapshot, boolean skipCorrupted, String keyspaceName, String... columnFamilies) throws IOException, ExecutionException, InterruptedException");
|
||||
return scrub(disableSnapshot, skipCorrupted, true, keyspaceName, columnFamilies);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int scrub(boolean disableSnapshot, boolean skipCorrupted,
|
||||
boolean checkData, String keyspaceName, String... columnFamilies)
|
||||
throws IOException, ExecutionException,
|
||||
InterruptedException {
|
||||
log(" scrub(boolean disableSnapshot, boolean skipCorrupted, bool checkData, String keyspaceName, String... columnFamilies) throws IOException, ExecutionException, InterruptedException");
|
||||
MultivaluedMap<String, String> queryParams = new MultivaluedHashMap<String, String>();
|
||||
APIClient.set_bool_query_param(queryParams, "disable_snapshot",
|
||||
disableSnapshot);
|
||||
@ -1281,16 +1290,6 @@ public class StorageService extends NotificationBroadcasterSupport
|
||||
log(" takeMultipleColumnFamilySnapshot");
|
||||
}
|
||||
|
||||
@Override
|
||||
public int scrub(boolean disableSnapshot, boolean skipCorrupted,
|
||||
boolean checkData, String keyspaceName, String... columnFamilies)
|
||||
throws IOException, ExecutionException,
|
||||
InterruptedException {
|
||||
// TODO Auto-generated method stub
|
||||
log(" scrub()");
|
||||
return c.getIntValue("");
|
||||
}
|
||||
|
||||
@Override
|
||||
public int forceRepairAsync(String keyspace, int parallelismDegree,
|
||||
Collection<String> dataCenters, Collection<String> hosts,
|
||||
|
Loading…
x
Reference in New Issue
Block a user