问题:
将zk的data目录下除了myid的信息删除后,启动zk失败,报错“ No snapshot found, but there are log entries. Something is broken!”
2023-08-16 10:29:41,844 [myid:1] - ERROR [main:QuorumPeer@937] - Unable to load database on disk
java.io.IOException: No snapshot found, but there are log entries. Something is broken!
at org.apache.zookeeper.server.persistence.FileTxnSnapLog.restore(FileTxnSnapLog.java:240)
at org.apache.zookeeper.server.ZKDatabase.loadDataBase(ZKDatabase.java:240)
at org.apache.zookeeper.server.quorum.QuorumPeer.loadDataBase(QuorumPeer.java:901)
at org.apache.zookeeper.server.quorum.QuorumPeer.start(QuorumPeer.java:887)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:205)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:123)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:82)
2023-08-16 10:29:41,853 [myid:1] - ERROR [main:QuorumPeerMain@101] - Unexpected exception, exiting abnormally
java.lang.RuntimeException: Unable to run quorum server
at org.apache.zookeeper.server.quorum.QuorumPeer.loadDataBase(QuorumPeer.java:938)
at org.apache.zookeeper.server.quorum.QuorumPeer.start(QuorumPeer.java:887)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.runFromConfig(QuorumPeerMain.java:205)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:123)
at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:82)
Caused by: java.io.IOException: No snapshot found, but there are log entries. Something is broken!
at org.apache.zookeeper.server.persistence.FileTxnSnapLog.restore(FileTxnSnapLog.java:240)
at org.apache.zookeeper.server.ZKDatabase.loadDataBase(ZKDatabase.java:240)
at org.apache.zookeeper.server.quorum.QuorumPeer.loadDataBase(QuorumPeer.java:901)
... 4 more
解决方案:
将zoo.cfg 中 dataLogDir路径下的信息删除后重启服务,可以成功。
当zk的data目录下除myid外信息被删除,导致启动时报Nosnapshotfound错误。解决方法是删除zoo.cfg中dataLogDir路径下的内容,然后重启服务。
6216

被折叠的 条评论
为什么被折叠?



