背景:私のアプリケーションはクラスターシステム(4つのノードがある)で実行されており、これら4つのノードのシステム時刻はNTPによって同期されています。Write.QUORUMおよびRead.QUORUM戦略を使用します。この問題の可能性はそれほど高くありません。Cassandraのバージョンは1.0.3です。Cassandra1.1.1を試しましたが、この問題はまだ存在します。
問題:列を削除しましたが、6秒後も、Cassandraは「isMarkedForDelete」がまだfalseである古いレコードを取得できます。
誰かが同じ問題に直面していますか?そしてそれを解決する方法は?
詳細:以下のログを参照してください。
ノード3(ローカルノード):
[pool-2-thread-42] 2012-06-27 14:49:23,732 SliceQueryFilter.java(行123)が2147483647の0を収集:SuperColumn(667072 [...... 7fffffffffffffff000001382ca96c8b636b698a
:false:36 @ 1340779097312016、......)
[pool-2-thread-44] 2012-06-27 14:51:21,367 StorageProxy.java(172行目)Mutations / ConsistencyLevelは[RowMutation(keyspace ='drc'、key = '3332'、modifications = [ColumnFamily( fpr_index [SuperColumn(667072 [ 7fffffffffffffff000001382ca96c8b636b698a
:true:4 @ 1340779881338000、])、])])] / QUORUM
--このレコードを14:51:21,367に削除します
[pool-2-thread-37] 2012-06-27 14:51:27,400 SliceQueryFilter.java(行123)は2147483647の0を収集します:SuperColumn(667072 [......、7fffffffffffffff000001382ca96c8b636b698a
:false:36 @ 1340779097312016 、。 .....)
-でも、14:51:27,400でも古いレコードを取得できます
Node2:
[MutationStage:118] 2012-06-27 14:51:21,373 RowMutationVerbHandler.java(48行目)RowMutation(keyspace ='drc'、key = '3332'、modifications = [ColumnFamily(fpr_index [SuperColumn(667072 [ 7fffffffffffffff000001382ca96c8b636b698a
:true:4 @ 1340779881338000、])、])])
[MutationStage:118] 2012-06-27 14:51:21,374 RowMutationVerbHandler.java(60行目)RowMutation(keyspace ='drc'、key = '3332'、modifications = [ColumnFamily(fpr_index [SuperColumn(667072 [ 7fffffffffffffff000001382ca96c8b636b698a
:true: 4 @ 1340779881338000、])、])])が適用されました。6692098@/192.168.0.3に応答を送信する
[MutationStage:123] 2012-06-27 14:51:27,405 RowMutationVerbHandler.java(48行目)RowMutation(keyspace ='drc'、key = '3332'、modifications = [ColumnFamily(fpr_index [SuperColumn(667072 [.. ....、7fffffffffffffff000001382ca96c8b636b698a
:false:36 @ 1340779097312016、......])
[MutationStage:123] 2012-06-27 14:51:27,405 RowMutationVerbHandler.java(60行目)RowMutation(keyspace ='drc'、key = '3332'、modifications = [ColumnFamily(fpr_index [SuperColumn(667072 [.. .. ...、7fffffffffffffff000001382ca96c8b636b698a
:false:36 @ 1340779097312016、.......])、])])が適用されました。6698516@/192.168.0.3に応答を送信する
Node1:
[MutationStage:98] 2012-06-27 14:51:24,661 RowMutationVerbHandler.java(48行目)RowMutation(keyspace ='drc'、key = '3332'、modifications = [ColumnFamily(fpr_index [SuperColumn(667072 [ 7fffffffffffffff000001382ca96c8b636b698a
:true:4 @ 1340779881338000、])、])])
[MutationStage:98] 2012-06-27 14:51:24,675 RowMutationVerbHandler.java(60行目)RowMutation(keyspace ='drc'、key = '3332'、modifications = [ColumnFamily(fpr_index [SuperColumn(667072 [ 7fffffffffffffff000001382ca96c8b636b698a
:true: 4 @ 1340779881338000、])、])])が適用されました。6692099@/192.168.0.3に応答を送信する
[MutationStage:93] 2012-06-27 14:51:40,932 RowMutationVerbHandler.java(48行目)RowMutation(keyspace ='drc'、key = '3332'、modifications = [ColumnFamily(fpr_index [SuperColumn(667072 [ 7fffffffffffffff000001382ca96c8b636b698a
:true:4 @ 1340779900915004、])、])])
DEBUG [MutationStage:93] 2012-06-27 14:51:40,933 RowMutationVerbHandler.java(60行目)RowMutation(keyspace ='drc'、key = '3332'、modifications = [ColumnFamily(fpr_index [SuperColumn(667072 [ 7fffffffffffffff000001382ca96c8b636b698a
:true:4 @ 1340779900915004、])、])])が適用されました。6706555@/192.168.0.3に応答を送信する
[ReadStage:55] 2012-06-27 14:51:43,074 SliceQueryFilter.java(行123)は5000の0を収集します7fffffffffffffff000001382ca96c8b636b698a
:: true:4 @ 1340779900915004
ノード4:
ノード4にはこのレコードに関するログはありません。