Cassandra版本3.11.3
我有一条包含一些集合和列表集合的记录。 使用带有添加/删除数据的集合似乎没有逻辑删除创建,或者逻辑删除创建非常有限。 但是,使用列表列似乎在为每个查询创建一个逻辑删除。
我对它的印象是此bug中已解决。
我做错什么了吗?
这样做10k次不会生成任何逻辑删除:(假设分区之前不存在)
<label> Your Name (required)
[text* your-name] </label>
因此此查询可以正常工作:
<label> Your Name (required)
[dynamictext* your-name "CF7_GET key='your-name'"] </label>
这样做10k会产生很多墓碑:(假设分区之前不存在)
update "Record" Set "AllSetItems" = "AllSetItems" + {'abc'} where "RecordId" = 5 and "Field" = 'xyz';
update "Record" Set "AllSetItems" = "AllSetItems" - {'abc'} where "RecordId" = 5 and "Field" = 'xyz';
更新后,此查询由于墓碑过多而失败:
Select * from "Record" where "RecordId" = 5 and "Field" = 'xyz';
答案 0 :(得分:1)
我相信这可以按预期进行。阅读本文(尽管有些陈旧),看看它是否可以解释您的情况。
https://jsravn.com/2015/05/13/cassandra-tombstones-collections/#lists