Cassandra更新因多个节点而静默失败

Cassandra更新因多个节点而静默失败,cassandra,datastax-java-driver,Cassandra,Datastax Java Driver,我有以下情况 有一个CQL表(Cassandra 2.0.12) 在大约一半的情况下,它都不会默默地工作(我在Cassandra日志中没有看到任何错误,在跟踪中没有任何可疑之处,没有失败的答案或异常,我可以看出它并不是通过选择成功的)。对于来自一个节点的集群,它始终有效 你能在案件调查中帮我指点方向吗 由于您提到您的节点时间不同步,您可能有一种罕见但仍然可能存在的情况 如果节点之间的时间不同步,则在更新/插入期间可能会导致一些不可预测的结果 通常在写入时,具有最新时间戳的一方获胜。如果您的一个节

我有以下情况

有一个CQL表(Cassandra 2.0.12)

在大约一半的情况下,它都不会默默地工作(我在Cassandra日志中没有看到任何错误,在跟踪中没有任何可疑之处,没有失败的答案或异常,我可以看出它并不是通过选择成功的)。对于来自一个节点的集群,它始终有效


你能在案件调查中帮我指点方向吗

由于您提到您的节点时间不同步,您可能有一种罕见但仍然可能存在的情况

如果节点之间的时间不同步,则在更新/插入期间可能会导致一些不可预测的结果


通常在写入时,具有最新时间戳的一方获胜。如果您的一个节点的时间落后,那么当它成为协调器时,它会在所有记录上加盖时间戳,因此决定此更新太旧,因为已经有其他具有较新时间戳的更新(来自具有准确时间的节点)。并因此放弃更新

你说它不起作用是什么意思?你要反复插入这张唱片吗?您通过SELECT检查的具体内容是什么?密钥空间复制系数是多少?什么是插入一致性级别?您的读取一致性级别是多少?@phact,是的,我正在将记录插入现有键(实际上使用插入语法进行更新)并按主键进行选择。在大约一半的情况下,insert反复报告没有任何问题,但随后的select显示未更新record@RomanTumaykin,键空间描述:
code
CREATE键空间pheed WITH replication={'class':'SimpleStrategy','replication\u factor':'3'};我不认为一致性水平是相关的,因为我在插入和选择之间尝试了不同的时间段(从1s到2分钟),这不会影响结果使用nodetool tpstats您是否看到任何丢失的突变?注意到问题后尝试运行修复,并检查修复是否修复了iTunes NTP!发生这种情况的时间差有多大?毫秒差异是否会导致此问题?在边缘场景中,当两次插入/更新的间隔在毫秒以内时,毫秒差异可能导致此问题。
CREATE TABLE article (
  version timeuuid,
  id timeuuid,
  active boolean,
  contentbody text,
  contentformat text,
  createdat text,
  entitytype text,
  externalsources list<text>,
  geolat double,
  geolong double,
  lastcomments list<text>,
  lastmodifiedat text,
  lstmodbyuserid text,
  lstmodbyusername text,
  previewimage text,
  publishedatarticle text static,
  publishedatver text,
  status text,
  subcategory text,
  subtitle text,
  title text,
  userid text static,
  username text static,
  PRIMARY KEY ((version), id)
) WITH
  bloom_filter_fp_chance=0.010000 AND
  caching='KEYS_ONLY' AND
  comment='' AND
  dclocal_read_repair_chance=0.100000 AND
  gc_grace_seconds=864000 AND
  index_interval=128 AND
  read_repair_chance=0.000000 AND
  replicate_on_write='true' AND
  populate_io_cache_on_flush='false' AND
  default_time_to_live=0 AND
  speculative_retry='99.0PERCENTILE' AND
  memtable_flush_period_in_ms=0 AND
  compaction={'class': 'SizeTieredCompactionStrategy'} AND
  compression={'sstable_compression': 'LZ4Compressor'};
UPDATE article SET title='updated title2',subtitle=null,status='draft',subCategory='{"id":"a6b68330-2ef5-4267-98c5-cd793edbb1a8","name":"sub cat name","color":"blue","parentCategory":{"id":"prim_cat_id","name":"prim cat name","color":"blue"}}',contentBody='someOtherBody',contentFormat='someOtherFormat',geoLat=138782.34,geoLong=138782.34,lastModifiedAt='2015-03-02 11:14:57',publishedAtArticle=null,publishedAtVer=null,lstModByUserId='e264fb2c-2485-488a-965f-765d139be9ea',lstModByUsername='reg1 user',externalSources=[],previewImage='{"width":1,"height":2,"duration":32,"original":"orig string","thumbs":{"prefix":"prefix str","ext":"jpg","sizes":["size1","size2"]}}' WHERE version=2480d891-c0cd-11e4-a691-df79ef55172c AND id=2480d890-c0cd-11e4-a691-df79ef55172c;