【问题标题】:Cassandra json2sstable Null Pointer ExceptionCassandra json2sstable 空指针异常
【发布时间】:2017-12-15 21:15:30
【问题描述】:

我使用的是 Cassandra 0.7.4。今天大部分时间我都在努力使用 json2sstable util 进行简单的导入。我在测试集群中。

I create a simple keyspace KS1. 
I create a simple CF mycf. 
I insert a row with only one column like set mycf[key1][col1]='col1value'

我使用 sstable2json util 将上述内容导出到一个调用的文件中。但是当我尝试反向(导入)时,它总是给出 NPE。

C:\>json2sstable -K KS1 -c mycf C:/out C:/var/lib/cassandra/data/kS1/mycf-f-2-Data.db
java.lang.NullPointerException
        at org.apache.cassandra.db.ColumnFamily.create(ColumnFamily.java:67)
        at org.apache.cassandra.db.ColumnFamily.create(ColumnFamily.java:61)
        at org.apache.cassandra.tools.SSTableImport.importJson(SSTableImport.java:194)
        at org.apache.cassandra.tools.SSTableImport.main(SSTableImport.java:421)
ERROR: null

我查看了源代码。有一个断言,其中 CFMetaData 被检查为不为空。这显然是说它是空的,但为什么呢?

任何建议都非常感谢。

【问题讨论】:

    标签: cassandra


    【解决方案1】:

    好的,这就是我所做的 - 我无法删除帖子,所以只记录我所做的。我重新安装了 Cassandra 0.7.4。我又做了同样的步骤。这次我只是稍微改变了列的时间戳值(一些随机增加)。 NPE 消失了,但它给出了内存不足的错误。我阅读了here,如果您收到 OOM 错误,您可以通过更改 cassandra.yaml 中的压缩设置来解决它。改变了它,它现在可以工作了。我真的不知道哪个步骤解决了问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-11-30
      • 2015-07-12
      相关资源
      最近更新 更多