【问题标题】:Cassandra cannot update row when one node is down一个节点关闭时,Cassandra 无法更新行
【发布时间】:2015-09-17 07:13:11
【问题描述】:

Cassandra 的第一次用户和强制性问题。 Cassandra 在复制因子=2 的 2 节点集群中运行,当 1 个节点关闭时行更新失败。

键空间定义如下。

CREATE KEYSPACE call_completion_dataspace WITH replication = {'class':'NetworkTopologyStrategy',  'DC1': '2'};

手动停止节点 1 上的服务时。行更新停止工作。见下文

cqlsh>select * from requests where b_msisdn=1;
b_msisdn | request
       1 | {"321":{"a_party":"321","b_party":"1234","request_timestamp":"Aug 12, 2015 4:25:30 PM","request_type":"autocall","call_failed_scenario":"noasnswer","refId":"113365567757_68961c4"}}

当节点 1 关闭时更新行

cqlsh>UPDATE call_completion_dataspace.callcompletionrequests SET request='"111"' WHERE b_msisdn=1; 
cqlsh>select * from call_completion_dataspace.callcompletionrequests where b_msisdn=1;             

列应该更新了,但是瞧

b_msisdn | request
       1 | {"321":{"a_party":"321","b_party":"1234","request_timestamp":"Aug 12, 2015 4:25:30 PM","request_type":"autocall","call_failed_scenario":"noasnswer","refId":"113365567757_68961c4"}}

如果 nodetool repair 在“up”节点上运行。更新开始照常工作。似乎该节点无法注册另一个节点已关闭。

【问题讨论】:

    标签: cassandra replication failover nodetool


    【解决方案1】:

    好的,问题是,服务器的时间不同步。匹配时间查询后运行良好。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-11-30
      • 2012-11-29
      • 2021-08-25
      • 2013-06-09
      • 2013-12-29
      • 2016-10-19
      • 2018-06-17
      • 2018-06-06
      相关资源
      最近更新 更多