nodetool repair validate/preview 未执行

Nodetool repair validate/preview is not executed

我在 Windows 台机器上有 2 个节点的测试集群 运行。

由于某种原因,nodetool repair 命令带有 --validate--preview flags 根本没有执行,看起来像解析错误。我不太确定它是否与 Windows 相关或我做错了什么。这是我为 validate 标志得到的结果(preview 标志收到了类似的结果):

C:\apache-cassandra\bin>nodetool repair --validate
nodetool: Keyspace [--validate] does not exist.

C:\apache-cassandra\bin>nodetool repair TSDB --validate
[2018-02-13 19:03:49,474] Unknown keyspace/cf pair (TSDB.--validate)
[2018-02-13 19:03:49,475] Repair command #13 finished with error
error: Repair job has failed with the error message: [2018-02-13 19:03:49,474] Unknown keyspace/cf pair (TSDB
.--validate)
-- StackTrace --
java.lang.RuntimeException: Repair job has failed with the error message: [2018-02-13 19:03:49,474] Unknown k
eyspace/cf pair (TSDB.--validate)
        at org.apache.cassandra.tools.RepairRunner.progress(RepairRunner.java:116)
        at org.apache.cassandra.utils.progress.jmx.JMXNotificationProgressListener.handleNotification(JMXNoti
ficationProgressListener.java:77)
        at com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.dispatchNotification(Unknown Source)

        at com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.doRun(Unknown Source)
        at com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(Unknown Source)
        at com.sun.jmx.remote.internal.ClientNotifForwarder$LinearExecutor.run(Unknown Source)


C:\apache-cassandra\bin>nodetool repair TSDB snapshots --validate
[2018-02-13 19:04:05,185] Unknown keyspace/cf pair (TSDB.--validate)
[2018-02-13 19:04:05,186] Repair command #14 finished with error
error: Repair job has failed with the error message: [2018-02-13 19:04:05,185] Unknown keyspace/cf pair (TSDB
.--validate)
-- StackTrace --
java.lang.RuntimeException: Repair job has failed with the error message: [2018-02-13 19:04:05,185] Unknown k
eyspace/cf pair (TSDB.--validate)
        at org.apache.cassandra.tools.RepairRunner.progress(RepairRunner.java:116)
        at org.apache.cassandra.utils.progress.jmx.JMXNotificationProgressListener.handleNotification(JMXNoti
ficationProgressListener.java:77)
        at com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.dispatchNotification(Unknown Source)

        at com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.doRun(Unknown Source)
        at com.sun.jmx.remote.internal.ClientNotifForwarder$NotifFetcher.run(Unknown Source)
        at com.sun.jmx.remote.internal.ClientNotifForwarder$LinearExecutor.run(Unknown Source)

关于如何克服此错误并在进行修复之前启动验证有什么想法吗?

此版本中没有 --validate--preview 选项。直到 4.0。验证修复作为修复的一部分自动发生,您无需指定它。您只是不能 运行 它本身来测试一致性。