【问题标题】:After upgrade from Cassandra 3.0.8 to 3.0.14 do we have to run nodetool upgradesstables?从 Cassandra 3.0.8 升级到 3.0.14 后,我们是否必须运行 nodetool upgradesstables?
【发布时间】:2017-10-02 18:20:12
【问题描述】:

最近我们将 2 DC 配置中的 8 个 cassandra 节点从 3.0.8 升级到 3.0.14。那么,将 3.0.8 升级到 3.0.14 时是否必须运行 nodetool upgradesstables?如果我们应该这样做,以最快的方式完成升级稳定的最佳实践是什么。 谢谢。

【问题讨论】:

标签: cassandra cassandra-3.0


【解决方案1】:

这是来自 org.apache.cassandra.io.sstable.format.big.BigFormat 的评论

    // ma (3.0.0): swap bf hash order
    //             store rows natively
    // mb (3.0.7, 3.7): commit log lower bound included
    // mc (3.0.8, 3.9): commit log intervals included

    // na (4.0.0): uncompressed chunks, pending repair session
    //
    // NOTE: when adding a new version, please add that to LegacySSTableTest, too.

因此,显然,在 3.0.8 和 3.0.14 之间,没有出现任何关于 sstable 版本的新内容。

但我使用 ccm 做了一些测试,我发现:

  • Cassandra 3.0.7 使用 mb 版本的 sstables。
  • Cassandra 3.0.8 对 sstables 使用 mb 版本(仍然是 mb!!)
  • Cassandra 3.0.9 - 3.0.14 为 sstables 使用 mc 版本。

其他一些有用的读物​​,虽然有点过时:onetwo

一种检查方法是转到您的 Cassandra 数据文件夹并检查 sstable 文件以查看它们使用的版本。如果有不同的版本,应该运行 nodetool upgradesstables。我会一次运行一个节点。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-08-13
    • 2018-08-20
    • 2020-03-22
    • 2016-02-02
    • 2013-02-16
    • 2019-04-22
    • 2018-07-29
    相关资源
    最近更新 更多