nodetool修复失败并出现快照错误

运行nodetool修复时,system_auth密钥空间的修复将失败,并具有以下日志条目:

INFO [AntiEntropySessions:5] 2015-03-17 20:00:34,795 RepairSession.java:260 - [repair #460cebb0-cce0-11e4-ba34-299132139fb9] new session: will sync <list of hosts and ips> on range (-7227533065400353128,-7224188466775720910] for system_auth.[credentials, users] ERROR [AntiEntropySessions:1] 2015-03-17 20:00:34,800 RepairSession.java:303 - [repair #3f7e2610-cce0-11e4-ba34-299132139fb9] session completed with the following error java.io.IOException: Failed during snapshot creation. at org.apache.cassandra.repair.RepairSession.failedSnapshot(RepairSession.java:344) ~[apache-cassandra-2.1.3.jar:2.1.3] at org.apache.cassandra.repair.RepairJob$2.onFailure(RepairJob.java:146) ~[apache-cassandra-2.1.3.jar:2.1.3] at com.google.common.util.concurrent.Futures$4.run(Futures.java:1172) ~[guava-16.0.jar:na] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [na:1.7.0_75] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [na:1.7.0_75] at java.lang.Thread.run(Thread.java:745) [na:1.7.0_75] 

该错误每隔几秒钟重复一次,直到我重新启动cassandra服务。 另一方面,如果我执行nodetool snapshot system_auth ,操作成功(没有日志条目)。

我的cassandra版本是2.1.3。

我们在Cassandra 2.1.5中有类似的问题。

你可以尝试运行:

 nodetool scrub system_auth 

根据https://issues.apache.org/jira/browse/CASSANDRA-8696在cassandra.yaml中增&#x52A0;request_timeout_in_ms的值也可能有所帮助(他们计划改变用于Cassandra 2.1.6中的nodetool repair的超时值,更新)。