【问题标题】:Cassandra, strange behavior after changing replication_factorCassandra,更改replication_factor后的奇怪行为
【发布时间】:2014-11-10 18:44:14
【问题描述】:

在更改现有键空间的 replication_factor 时,我遇到了一个奇怪的情况。

使用由三个节点组成的集群,每个节点运行 Datastax Cassandra 社区版 2.0.11。

我创建了一个键空间“训练”:

create keyspace training with replication = {
'class': 'SimpleStrategy',
'replication_factor': 1
};

那么,

use training;

那么,

create table customers (...);

插入了三个记录。从另一个节点查询表,并按预期取回了三条记录。

然后,更改了 replication_factor:

alter keyspace training with replication = {
'class': 'SimpleStrategy',
'replication_factor': 3
};

查询表。它显示零记录!几秒钟后,它显示了 2 条记录。然后又是零记录。插入两条记录。现在它有时会显示 2 个(新)记录,有时会显示 4 个(2 个新记录,2 个旧记录)。三台机器上的行为相同。

我完全被难住了。有人知道为什么会这样吗?

我想到的只有一种奇怪的可能性:集群中的三个节点中,两个运行 Ubuntu,64 位操作系统,第三个运行 32 位 Windows 7 操作系统。这是否重要/解释了这种行为?

谢谢。

【问题讨论】:

    标签: cassandra cql


    【解决方案1】:

    问题解决了。我意识到我没有运行“nodetool repair”。一旦我跑了,神秘的消失/再现就停止了。

    【讨论】:

    • +1 提供了一个很好的例子,说明为什么在更改 RF 后需要运行 nodetool repair
    猜你喜欢
    • 2016-11-15
    • 2013-08-15
    • 2018-08-07
    • 2011-06-02
    • 1970-01-01
    • 1970-01-01
    • 2018-12-16
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多