我有两个节点的测试集群在Windows计算机上运行。
- 复制因子:2
- Cassandra版本:3.10
由于某种原因,带有**--validate或--preview标志的nodetool repair命令根本没有执行,看起来像是解析错误。我不太确定它是与Windows连接还是我做错了什么。以下是validate**标志的结果(预览标志收到了类似的结果):
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$1.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$1.run(Unknown Source)
有什么想法可以克服这个错误并在进行修复之前启动验证吗?
2条答案
按热度按时间n1bvdmb61#
此版本中没有
--validate
和--preview
选项。直到4.0。验证修复作为修复的一部分自动发生,您不需要指定它。你还不能自己运行它来测试一致性。2uluyalo2#
nodetool修复似乎不支持--validate或--preview选项,尽管这些选项包含在3.11官方文档中:https://cassandra.apache.org/doc/3.11/cassandra/operating/repair.html