java - Neo4j:2.2.3:服务器在 "Detected incorrectly shut down database, performing recovery"后无法启动

标签 java neo4j centos

neo4j 服务器意外关闭显然是由于 RAM 使用过多(我的 VPS 统计显示 > 32 GB 使用)。之后我尝试启动服务器。由于花费的时间太长,我使用 Ctrl+C 停止了该过程。我试过用控制台启动它。我在 messages.log 中收到以下错误

*"org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.kernel.Recovery@4dad40e0' failed to initialize. Please see attached cause exception."*
org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.kernel.Recovery@4dad40e0' failed to initialize. Please see attached cause exception.
        at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:489) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.lifecycle.LifeSupport.init(LifeSupport.java:72) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:106) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.NeoStoreDataSource.start(NeoStoreDataSource.java:530) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:507) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:115) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.transaction.state.DataSourceManager.start(DataSourceManager.java:117) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:507) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:115) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.InternalAbstractGraphDatabase.run(InternalAbstractGraphDatabase.java:331) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.EmbeddedGraphDatabase.<init>(EmbeddedGraphDatabase.java:59) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.recovery.StoreRecoverer.recover(StoreRecoverer.java:96) [neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.server.preflight.PerformRecoveryIfNecessary.run(PerformRecoveryIfNecessary.java:65) [neo4j-server-2.2.3.jar:2.2.3]
        at org.neo4j.server.preflight.PreFlightTasks.run(PreFlightTasks.java:71) [neo4j-server-2.2.3.jar:2.2.3]
        at org.neo4j.server.AbstractNeoServer.runPreflightTasks(AbstractNeoServer.java:399) [neo4j-server-2.2.3.jar:2.2.3]
        at org.neo4j.server.AbstractNeoServer.start(AbstractNeoServer.java:195) [neo4j-server-2.2.3.jar:2.2.3]
        at org.neo4j.server.Bootstrapper.start(Bootstrapper.java:117) [neo4j-server-2.2.3.jar:2.2.3]
        at org.neo4j.server.Bootstrapper.main(Bootstrapper.java:69) [neo4j-server-2.2.3.jar:2.2.3]
Caused by: java.lang.Error: Maximum lock count exceeded
        at java.util.concurrent.locks.ReentrantReadWriteLock$Sync.tryAcquire(ReentrantReadWriteLock.java:403) ~[na:1.7.0_85]
        at java.util.concurrent.locks.AbstractQueuedSynchronizer.acquire(AbstractQueuedSynchronizer.java:1197) ~[na:1.7.0_85]
        at java.util.concurrent.locks.ReentrantReadWriteLock$WriteLock.lock(ReentrantReadWriteLock.java:945) ~[na:1.7.0_85]
        at org.neo4j.index.impl.lucene.LuceneDataSource.getWriteLock(LuceneDataSource.java:229) ~[neo4j-lucene-index-2.2.3.jar:2.2.3]
        at org.neo4j.index.impl.lucene.LuceneCommandApplier.visitIndexDefineCommand(LuceneCommandApplier.java:117) ~[neo4j-lucene-index-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.transaction.command.NeoCommandHandler$Delegator.visitIndexDefineCommand(NeoCommandHandler.java:323) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.api.LegacyIndexApplier.applier(LegacyIndexApplier.java:92) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.api.LegacyIndexApplier.visitIndexRemoveCommand(LegacyIndexApplier.java:149) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.api.CommandApplierFacade.visitIndexRemoveCommand(CommandApplierFacade.java:218) ~[neo4j-kernel-2.2.3.jar:2.2.3]
 at org.neo4j.kernel.impl.index.IndexCommand$RemoveCommand.handle(IndexCommand.java:253) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.api.CommandApplierFacade.visit(CommandApplierFacade.java:82) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.api.CommandApplierFacade.visit(CommandApplierFacade.java:45) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.transaction.log.PhysicalTransactionRepresentation.accept(PhysicalTransactionRepresentation.java:69) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.api.TransactionRepresentationStoreApplier.apply(TransactionRepresentationStoreApplier.java:108) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.transaction.state.RecoveryVisitor.visit(RecoveryVisitor.java:70) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.transaction.state.RecoveryVisitor.visit(RecoveryVisitor.java:36) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.transaction.log.LogFileRecoverer.visit(LogFileRecoverer.java:54) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.impl.transaction.log.LogFileRecoverer.visit(LogFileRecoverer.java:32) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.Recovery.init(Recovery.java:72) ~[neo4j-kernel-2.2.3.jar:2.2.3]
        at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.init(LifeSupport.java:483) [neo4j-kernel-2.2.3.jar:2.2.3]
        ... 17 common frames omitted

我注意到错误是 Caused by: java.lang.Error: Maximum lock count exceeded. 我无法启动数据库。当我在控制台模式下启动时,只是说“检测到错误地关闭数据库,正在执行恢复..”并且同时在 messages.log 中出现上述错误。 如果在 graph.db 中可以进行一些手动清理,请提出建议。 非常感谢任何帮助。

最佳答案

此问题已修复并将包含在 2.2.4 版本中。参见 https://github.com/neo4j/neo4j/commit/c9596af0d990d7dde9a9053799b7295985ae3c05了解更多详情。

关于java - Neo4j:2.2.3:服务器在 "Detected incorrectly shut down database, performing recovery"后无法启动,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31699957/

相关文章:

java - 在 neo4j 中出现以下错误 "java.lang.UnsupportedOperationException:....."

linux - 根据大小比较两个文件

带有临时 Web 报告的 Java 商业智能框架?

Java:通过我的程序清除 NetBeans 控制台

java - 获取包含与模式匹配的文本的对象列表

mysql - 无法在 Mysql/plesk 上重置管理员密码

CentOS v6.8/v6.9 安装报错 Unable to read package metadata。这可能是由于缺少 repodata 目录。

java - 遍历数据结构的元素而不是集合

Neo4J 加载 CSV -> URI 不是分层的

neo4j - SDN4 - 更新关系实体的子项会导致关系被删除