卡桑德拉:如何找到读修复所在的表?

问题描述

在调试日志中,我可以找到许多摘要不匹配异常,如下所示:

DEBUG [ReadRepairstage:289] 2020-08-13 00:50:26,520 ReadCallback.java:242 - Digest mismatch:
org.apache.cassandra.service.DigestMismatchException: Mismatch for key DecoratedKey(xxx,xxx) (xxx vs xxx)
        at org.apache.cassandra.service.DigestResolver.compareResponses(DigestResolver.java:92) ~[apache-cassandra-3.11.4.jar:3.11.4]
        at org.apache.cassandra.service.ReadCallback$AsyncRepairRunner.run(ReadCallback.java:233) ~[apache-cassandra-3.11.4.jar:3.11.4]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) [na:1.8.0_252]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) [na:1.8.0_252]
        at org.apache.cassandra.concurrent.NamedThreadFactory.lambda$threadLocalDeallocator$0(NamedThreadFactory.java:81) [apache-cassandra-3.11.4.jar:3.11.4]
        at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_252]

我知道这意味着将进行读取修复。但是有可能知道要维修哪张桌子?还是如何判断哪个表具有此摘要不匹配?我已经搜索了很长时间,但没有找到答案。我找到的一个密切参考是this,但是命令nodetool getsstables仍然需要我知道keyspace_nametable_name

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)