【问题标题】:"Lost notification" from nodetool repair来自 nodetool 修复的“丢失通知”
【发布时间】:2016-10-12 22:57:34
【问题描述】:

我在运行nodetool repair 时经常看到以下消息:

[2015-02-10 16:19:40,042] Lost notification. You should check server log for repair status of keyspace xxx

它的真正含义是什么(如果它很危险,如何防止它)?

我在四节点集群中使用 Cassandra 2.1.2。

【问题讨论】:

    标签: cassandra


    【解决方案1】:

    此消息本身无害。这只意味着nodetool丢失了修复状态的跟踪。它不影响修复本身。如果在上一个命令完成后发出下一个修复命令可能会很危险,因此会导致多个并发修复,从而在系统上产生更高的负载。我曾经有一个脚本(现在没有了),它监视由“丢失通知”消息触发的修复周期开始/完成消息的日志,以免产生竞争性修复。

    【讨论】:

      【解决方案2】:

      这似乎是known bug,已在最新版本中修复。

      【讨论】:

      • 谢谢。但正如我所写的,我使用的是最新的 Cassandra (2.1.2),该版本晚于链接错误的“修复版本”发布。更何况这个bug是nodetool收到事件后退出,而不是事件的原因。
      • 是的,“已修复”状态是关于防止 nodetool 退出,而不是关于修复 JMX 问题。没有必要退出 nodetool 的确切原因在票证中进行了描述和链接。
      【解决方案3】:

      您可以随时按照错误消息的建议检查 cassandra 的系统日志并收集有关修复活动的信息。

      $ cd /var/log/cassandra/
      $ cat system.log | grep repair
      

      请注意,我正在出于某些目的测试 cassandra 2.1.15,但遇到了问题。 作为考虑,由于它不是主要错误,不会真正影响修复过程,我认为它会持续一段时间。

      【讨论】:

        猜你喜欢
        • 2021-06-18
        • 2021-11-15
        • 2014-09-23
        • 2018-05-09
        • 1970-01-01
        • 2018-09-13
        • 2016-02-02
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多