首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法在cassandra-cli中创建密钥空间

无法在cassandra-cli中创建密钥空间
EN

Stack Overflow用户
提问于 2012-06-04 14:56:37
回答 2查看 3.8K关注 0票数 4

我有一个简单的单节点cassandra设置(1.1.0) (默认设置)。每当我尝试在cassandra-cli中创建一个密钥空间时,我都会得到这样的错误: default@unknown create keyspace tax;org.apache.thrift.transport.TTransportException

在cassandra服务器日志中,异常stacktrace: ERROR 12:15:04,722 exception In thread ThreadMigrationStage:1,5,main

代码语言:javascript
复制
java.lang.AssertionError
    at org.apache.cassandra.db.DefsTable.updateKeyspace(DefsTable.java:441)
    at org.apache.cassandra.db.DefsTable.mergeKeyspaces(DefsTable.java:339)
    at org.apache.cassandra.db.DefsTable.mergeSchema(DefsTable.java:269)
    at org.apache.cassandra.service.MigrationManager$1.call(MigrationManager.java:214)

我尝试删除./var/lib/cassandra/data中的内容并重新启动服务器和我的mac,但仍然遇到同样的问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-04 17:51:23

下面是向Cassandra添加keyspace的流程。(根据Cassandrda源代码中的注释。如果我说错了,请纠正我)

1)在第一步,它检查是否添加了任何新的键位。

2)在第二步,我们检查是否有任何键空间被重新创建,在此上下文中,重新创建意味着它们先前被删除,但仍然作为空键存在于低级模式中

3)在最后一步,我们更新修改后的键空间,并保存键空间,稍后删除它们。

在修改Keyspace时,它调用函数"updateKeyspace“,在这里,如果密钥空间元数据被破坏,它就会抛出断言错误。

因此,在您的情况下,可能是您删除了相同的键空间,并试图重新创建,这是导致此问题的原因,或者正如您提到的那样,这是元数据损坏。

票数 3
EN

Stack Overflow用户

发布于 2012-06-04 17:06:41

看起来系统密钥空间被破坏了。从中删除数据文件

  • /var/lib/cassandra/data
  • /var/lib/cassandra/commitlog
  • /var/lib/cassandra/saved_caches

并重新启动cassandra服务器解决了此问题。(上述目录在$CASSANDRA_HOME/conf/cassandra.yaml中定义)

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10877417

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档