【发布时间】:2019-07-11 14:58:03
【问题描述】:
这似乎是我的错误,
1) 我创建了一个复制因子为“3”的键空间
CREATE KEYSPACE IF NOT EXISTS replicationtest WITH replication = {'class':'SimpleStrategy','replication_factor' : 3};
注意:这是一个单节点集群,我还是保持复制因子为3,这样我以后会在集群中添加新节点
2) 我将一致性级别设置为 ONE
cqlsh:replicationtest> CONSISTENCY ONE
3) 我创建了一个“测试表”
CREATE TABLE IF NOT EXISTS testtable("partitionId" text, "name" text, "value" text, primary key ("partitionId","name"));
4) 现在我尝试了简单的 INSERT 查询
INSERT INTO testtable("partitionId", "name", "value") VALUES ('testtable','testname', 'testvalue');
这按预期工作,因为一致性级别为 1
5) 现在我尝试使用 LWT 插入查询(如果不存在)
INSERT INTO testtable("partitionId", "name", "value") VALUES ('testtable','testnameanew', 'testvaluenew') IF NOT EXISTS;
现在失败了 NoHostAvailable: 错误
有人能解释一下如何解决这个问题吗?如何以 1 的一致性执行此 LWT?
【问题讨论】:
标签: cassandra cassandra-3.0 lwt