在Cassandra启动时频繁出现java.lang.AssertionError

时间:2017-02-03 02:59:05

标签: cassandra cassandra-3.0

设置

我们以独立模式运行Cassandra 3.7作为服务并以root身份运行。这是我们的cassandra评估阶段,我们似乎在很长一段时间内没有任何问题。但是在上周我们开始间歇性地看到以下错误

ERROR [main] 2017-02-02 21:54:58,854 CassandraDaemon.java:731 - Exception encountered during startup
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.AssertionError
        at org.apache.cassandra.utils.Throwables.maybeFail(Throwables.java:50) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.utils.FBUtilities.waitOnFutures(FBUtilities.java:372) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.db.commitlog.CommitLogReplayer.blockForWrites(CommitLogReplayer.java:257) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:186) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:165) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:314) [apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:585) [apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:714) [apache-cassandra-3.7.jar:3.7]
Caused by: java.util.concurrent.ExecutionException: java.lang.AssertionError
        at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[na:1.8.0_111]
        at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[na:1.8.0_111]
        at org.apache.cassandra.utils.FBUtilities.waitOnFutures(FBUtilities.java:365) ~[apache-cassandra-3.7.jar:3.7]
        ... 6 common frames omitted
Caused by: java.lang.AssertionError: null
        at org.apache.cassandra.cache.ChunkCache$CachingRebufferer.<init>(ChunkCache.java:202) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.cache.ChunkCache.wrap(ChunkCache.java:155) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.cache.ChunkCache.maybeWrap(ChunkCache.java:163) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.io.util.BufferedSegmentedFile.createRebufferer(BufferedSegmentedFile.java:42) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.io.util.BufferedSegmentedFile.<init>(BufferedSegmentedFile.java:27) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.io.util.BufferedSegmentedFile$Builder.complete(BufferedSegmentedFile.java:50) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.io.util.SegmentedFile$Builder.complete(SegmentedFile.java:181) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.io.util.SegmentedFile$Builder.buildIndex(SegmentedFile.java:207) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.io.sstable.format.big.BigTableWriter.openFinal(BigTableWriter.java:309) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.io.sstable.format.big.BigTableWriter.access$600(BigTableWriter.java:55) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.io.sstable.format.big.BigTableWriter$TransactionalProxy.doPrepare(BigTableWriter.java:348) ~[apache-cassandra-]
        at org.apache.cassandra.utils.concurrent.Transactional$AbstractTransactional.prepareToCommit(Transactional.java:173) ~[apache-cassandr]
        at org.apache.cassandra.io.sstable.format.SSTableWriter.prepareToCommit(SSTableWriter.java:275) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.io.sstable.SimpleSSTableMultiWriter.prepareToCommit(SimpleSSTableMultiWriter.java:101) ~[apache-cassandra-3.7.]
        at org.apache.cassandra.db.ColumnFamilyStore$Flush.flushMemtable(ColumnFamilyStore.java:1148) ~[apache-cassandra-3.7.jar:3.7]
        at org.apache.cassandra.db.ColumnFamilyStore$Flush.run(ColumnFamilyStore.java:1098) ~[apache-cassandra-3.7.jar:3.7]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_111]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) ~[na:1.8.0_111]
        at java.lang.Thread.run(Thread.java:745) ~[na:1.8.0_111]

在挖掘一下之后,我们遇到了类似的错误,这些错误是在cassandra 2.x中提出并修复的,例如Node Startup fails with assertionerror。但是这些解决方案似乎并没有解决我们的问题。我们遵循的原始解决方案是,删除数据目录,cassandra重新创建并正确显示。但是,这不是解决我们问题的灵丹妙药。

问题: 1)出现此错误的原因是什么。我只能看到这是关于缓存的东西,但我的saved_cache_directory是空的。

2)是否有一些我们忽略的配置。是否有任何关于缓存的特定配置必须在cassandra.yaml

中完成

0 个答案:

没有答案