Cassandra插入错误



我有一个4节点的Cassandra集群,有2个Cassandra节点和2个活跃节点[Cassandra +TT]。轻快β 2

我使用cassandra-cli插入创建和更新列族

我的插入和投影总是失败。例如

计数器列族

[default@StatsKeySpace] create column family Impressions with comparator=UTF8Type and default_validation_class=CounterColumnType and key_validation_class=UTF8Type;
175d69d0-eb6f-11e0-0000-93bbb4d362fc
Waiting for schema agreement...
... schemas agree across the cluster
[default@StatsKeySpace] incr Impressions['Test']['impressions'] by 10;
null
[default@StatsKeySpace] incr Impressions['Test']['impressions'] by 1; 
null
[default@StatsKeySpace] get Impressions['Test']['impressions'];
null
[default@StatsKeySpace] list Impressions;
Using default limit of 100
null

标准列族

[default@StatsKeySpace] set TestColumnFamily['Test']['tamil']='hai';
null

集群中所有节点都是活的

这是我的keyspace定义

Keyspace: StatsKeySpace:
  Replication Strategy: org.apache.cassandra.locator.NetworkTopologyStrategy
  Durable Writes: true
    Options: [replication_factor:1]

我尝试了cassandra-cli的调试模式,我发现这个错误

[default@unknown] use StatsKeySpace;
Authenticated to keyspace: StatsKeySpace
[default@StatsKeySpace] incr Impressions['tamil']['count'] by 1;
null
java.lang.RuntimeException
    at org.apache.cassandra.cli.CliClient.executeCLIStatement(CliClient.java:297)
    at org.apache.cassandra.cli.CliMain.processStatement(CliMain.java:217)
    at org.apache.cassandra.cli.CliMain.main(CliMain.java:345)

两个列族都有replicate_on_write false提前感谢您的帮助

问候,泰米尔

多亏了jbellis我升级了随brisk发布的cassandra版本,并在设置了调试模式的情况下运行cassandra-cli。正如jbellis提到的,我得到了一个有意义的异常。

UnavailableException -没有足够的节点存活以满足复制因子。

因为brisk使用了bricksnitch,它在不同的dc上部署了brisk节点和cassandra节点。我的4个节点集群中的一个,也就是Brisk DC的种子,宕机了。我希望这就是我得到那个异常的原因。

因此,我重新启动了整个集群,所有节点升级为0.8.6,keyspace升级为simplestrategy,因为我的部署只需要一个数据中心。

现在我所有的插入和投影都做得很好:)希望轻快b2在各方面都与0.8.6兼容

问候,Tamil.s

您正在尝试增加非计数器列。请参阅http://www.datastax.com/dev/blog/whats-new-in-cassandra-0-8-part-2-counters获取创建CF用于计数器的示例。

(轻快b2船是什么在这一点上是一个相当旧的卡桑德拉版本。我相信新版本会给出一个更有用的错误信息。

相关内容

  • 没有找到相关文章

最新更新