没有足够的副本可用于一致性 LOCAL_ONE 查询(需要 1 个副本,但只有 0 个活动副本)

use*_*961 6 cassandra

我的 cassandra 集群中有 6 个节点,所有节点都已启动。我的键空间设置为:

replication = {'class': 'SimpleStrategy', 'replication_factor': '1'}  AND durable_writes = true
Run Code Online (Sandbox Code Playgroud)

从这个 cas 集群中读取数据会出现错误:

java.io.IOException: Exception during execution of SELECT "colA", "colB", "colC", "colD" FROM "keyspacename"."tablename" WHERE token("colA") > ? AND token("colA") <= ?  LIMIT 1 ALLOW FILTERING: Not enough replica available for query at consistency LOCAL_ONE (1 required but only 0 alive)
Run Code Online (Sandbox Code Playgroud)

我所有的节点的复制因子都是 1..那么是什么导致了这个问题呢?

我也可以 cqlsh 并在此表中执行“选择”和“插入”操作。

有人知道发生了什么事吗?

Aft*_*tab 4

SimpleStrategy:仅用于单个数据中心。如果您想要多个数据中心,请使用 NetworkTopologyStrategy。

或者尝试使用一致性 ONE、ALL、ANY、QUORUM 运行相同的查询。我的意思是不使用 LOCAL_*