首页 文章

节点启动失败:FileNotFoundException

提问于
浏览
1

我遇到了阻止我启动Cassandra守护进程的问题 .

我正在使用Cassandra Community 2.1.4

几小时前我创建了我的集群,它一直运行良好,直到我重新启动托管此节点的azure VM . 我的群集使用密码验证 .

任何的想法 ?

edit :我不知道它是否相关,但我试图在重新启动之前删除键空间,但它失败了 . (不,我还没有尝试删除system_auth键空间,万一你想知道)

Cassandra日志文件包含:

ERROR [MemtableFlushWriter:3] 2015-04-14 13:42:54,359 CassandraDaemon.java:223 - 线程中的异常Thread [MemtableFlushWriter:3,5,main] java.lang.RuntimeException:java.io.FileNotFoundException:/ var org.apache.cassandra.io.util.SequentialWriter上的/lib/cassandra/data/system_auth/users-473588ad9c7938be8b59e06c10456ba0/system_auth-users-tmp-ka-2-Index.db(Permission denied) . (SequentialWriter.java:80) 〜[apache-cassandra-2.1.4.jar:2.1.4]在org.apache.cassandra.io.util.SequentialWriter.open(SequentialWriter.java:109)〜[apache-cassandra-2.1.4.jar:2.1 .4]在org.apache.cassandra.io.util.SequentialWriter.open(SequentialWriter.java:104)〜[apache-cassandra-2.1.4.jar:2.1.4] org.apache.cassandra.io.sstable .SSTableWriter $ IndexWriter . (SSTableWriter.java:598)〜[apache-cassandra-2.1.4.jar:2.1.4] at org.apache.cassandra.io.sstable.SSTableWriter . (SSTableWriter.java:135)〜[ apache-cassandra-2.1.4.jar:2.1.4] at org.apache.cassandra.db.Memtable $ FlushRunnable.createFlushWriter(Memtable.java:404)~ [apa che-cassandra-2.1.4.jar:2.1.4] at org.apache.cassandra.db.Memtable $ FlushRunnable.writeSortedContents(Memtable.java:343)〜[apache-cassandra-2.1.4.jar:2.1.4 ] org.apache.cassandra.db.Memtable $ FlushRunnable.runMayThrow(Memtable.java:327)〜[apache-cassandra-2.1.4.jar:2.1.4] at org.apache.cassandra.utils.WrappedRunnable.run (WrappedRunnable.java:28)〜[apache-cassandra-2.1.4.jar:2.1.4]在com.google.common.util.concurrent.MoreExecutors $ SameThreadExecutorService.execute(MoreExecutors.java:297)〜[guava- 16.0.jar:na] at org.apache.cassandra.db.ColumnFamilyStore $ Flush.run(ColumnFamilyStore.java:1092)〜[java.util.concurrent上的[apache-cassandra-2.1.4.jar:2.1.4] . ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)〜[na:1.7.0_76] at java.util.concurrent.ThreadPoolExecutor $ Worker.run(ThreadPoolExecutor.java:615)〜[na:1.7.0_76] at java.lang . Thread.run(Thread.java:745)〜[na:1.7.0_76]

edit2

几行之前在日志文件中:

WARN [main] 2015-04-14 14:06:59,068 CommitLogReplayer.java:139 - 在提交日志/var/lib/cassandra/commitlog/CommitLog-4-1429010621980.log的第16位遇到错误的标头,CRC无效 . 段标记的结尾应该为零 .

有办法解决这个问题吗?

1 回答

  • 1

    java.io.FileNotFoundException:/var/lib/cassandra/data/system_auth/users-473588ad9c7938be8b59e06c10456ba0/system_auth-users-tmp-ka-2-Index.db(Permission denied)

    这句话说,cassandra无法在未经许可的情况下创建 /var/lib/cassandra/data/system_auth/users-473588ad9c7938be8b59e06c10456ba0/system_auth-users-tmp-ka-2-Index.db . 检查子目录的所有者是否为 cassandra . 如果不是,请将其分配给权限所有者 cassandra 并重新启动cassandra .

    chown -R cassandra:cassandra /var/lib/cassandra/data/system_auth

相关问题