我尝试在我的Ubuntu 13.04上安装Cassandra 2.0,但是当我尝试启动它时出现了这个错误:
java.lang.UnsupportedOperationException: Commitlog segment is too old to open; upgrade to 1.2.5+ first
at org.apache.cassandra.db.commitlog.CommitLogDescriptor.fromFileName(CommitLogDescriptor.java:65)
at org.apache.cassandra.db.commitlog.CommitLogSegment$CommitLogSegmentFileComparator.compare(CommitLogSegment.java:391)
at org.apache.cassandra.db.commitlog.CommitLogSegment$CommitLogSegmentFileComparator.compare(CommitLogSegment.java:386)
at java.util.TimSort.countRunAndMakeAscending(TimSort.java:324)
at java.util.TimSort.sort(TimSort.java:189)
at java.util.TimSort.sort(TimSort.java:173)
at java.util.Arrays.sort(Arrays.java:659)
at org.apache.cassandra.db.commitlog.CommitLog.recover(CommitLog.java:124)
at org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:300)
at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:443)
at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:486)
Run Code Online (Sandbox Code Playgroud)
有谁能够帮我?
我将扩展一下 @aurand 所说的内容,以下是如何将 Cassandra 从 0.x 或 1.1.x 升级到 2.x。
首先升级到1.2.9 apt-get install cassandra=1.2.9。
然后运行nodetool upgradesstables(你必须否则会发生一些意想不到的事情),遵循这个过程nodetool compactionstats(甚至更好watch -n 2 nodetool compactionstats)可能需要几天的时间,具体取决于你的数据。
最后升级到最新版本apt-get install cassandra,再次运行nodetool upgradesstables。然后你就完成了。
nodetool upgradesstables注意:您可以使用代替nodetool scrub,但似乎建议使用upgradesstables代替。
| 归档时间: |
|
| 查看次数: |
1578 次 |
| 最近记录: |