zoukankan      html  css  js  c++  java
  • Cassandra

    在delete一条数据后,再insert 相同内容的数据,结果看起来是成功的,但是当你去查找这个数据,却没有任何内容,整个过程并且没有任何异常提示。

    这往往发生在单元测试的时候,我们反复清理和写入数据,单元测试有时候成功,有时候失败。
    这对单元测试来说,简直就是噩梦。。。

    从论坛上收集的一些信息显示,这是由于墓碑引起的,SSTable是不可修改的,数据delete后被标记墓碑,同主键的数据再写入的时候,由于墓碑的存在,还是被认为是删除的,即使写入成功。

    如果是测试,truncate tablename可以解决这个问题,但是如果数据不能这样全部清理,就不知道要如何处理了。

    我自己在使用过程中这个问题的触发会更诡异一些,使用PHP驱动进行写入,使用CQLSH客户端进行删除,然后再用PHP写入时,数据写不进去。
    但是如果使用PHP进行删除和写入操作,则没有这个问题。

  • 相关阅读:
    视频遮挡问题
    calc兼容性
    javascript变量声明提升
    jquery插件
    prop和attr在 jquery的
    onclick防止冒泡和json对象放入
    git 入门
    去掉ie滚动条兼容性
    单页面应用程序(SPA)
    swiper轮播图插件
  • 原文地址:https://www.cnblogs.com/didda/p/4913284.html
Copyright © 2011-2022 走看看