Cassandra - Insert after Delete fails silently
生活随笔
收集整理的這篇文章主要介紹了
Cassandra - Insert after Delete fails silently
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在delete一條數據后,再insert 相同內容的數據,結果看起來是成功的,但是當你去查找這個數據,卻沒有任何內容,整個過程并且沒有任何異常提示。
這往往發生在單元測試的時候,我們反復清理和寫入數據,單元測試有時候成功,有時候失敗。
這對單元測試來說,簡直就是噩夢。。。
從論壇上收集的一些信息顯示,這是由于墓碑引起的,SSTable是不可修改的,數據delete后被標記墓碑,同主鍵的數據再寫入的時候,由于墓碑的存在,還是被認為是刪除的,即使寫入成功。
如果是測試,truncate tablename可以解決這個問題,但是如果數據不能這樣全部清理,就不知道要如何處理了。
我自己在使用過程中這個問題的觸發會更詭異一些,使用PHP驅動進行寫入,使用CQLSH客戶端進行刪除,然后再用PHP寫入時,數據寫不進去。
但是如果使用PHP進行刪除和寫入操作,則沒有這個問題。
轉載于:https://www.cnblogs.com/didda/p/4913284.html
總結
以上是生活随笔為你收集整理的Cassandra - Insert after Delete fails silently的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: log_miner操作(日志挖掘)
- 下一篇: ArrayList、LinkedList