我们在单节点开发机器上使用1.2.3 / 1.2.4(Datastax Community Edition)遇到随机SSTable损坏,其中使用具有来自多个列POV的宽行的数据模型具有混合读/写负载。尽管如此,写入比读取更频繁。这些问题表现为堆栈跟踪,如:
ERROR [ReadStage:13899] 2013-04-24 07:09:00,770 CassandraDaemon.java (line 132) Exception in thread Thread[ReadStage:13899,5,main]
java.lang.RuntimeException: org.apache.cassandra.io.sstable.CorruptSSTableException: java.io.EOFException
at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:1582)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
Caused by: org.apache.cassandra.io.sstable.CorruptSSTableException: java.io.EOFException
at org.apache.cassandra.db.columniterator.SimpleSliceReader.computeNext(SimpleSliceReader.java:106)
... many more
Caused by: java.io.EOFException
at java.io.RandomAccessFile.readFully(Unknown Source)
... many more
或
java.lang.RuntimeException: org.apache.cassandra.io.sstable.CorruptSSTableException: org.apache.cassandra.db.ColumnSerializer$CorruptColumnException: invalid column name length 0
不幸的是,我们还没有可重现的测试用例,因为这是随机发生的(例如几天之后),而不是立即发生。
我还在这个/其他论坛中研究了1.2的类似问题。
问题是:您对Cassandra 1.2在制作中的体验是什么,或者您是否建议在1.2系列中最新发布1.1版1.1?
虽然我们在单节点开发环境中遇到这些问题,但在由多个节点服务的集群中运行整个内容时可能会备份事情,但我们认为事情应该在单个节点上运行而不会损坏。
任何提示都非常感谢。感谢。
答案 0 :(得分:0)
我在生产中有更好的cassandra-1.1经验。当前版本1.2.6仍未通过我们繁重的预生产测试。