事务日志恢复DEBUG

 

Here’s the table of contents:

  1. 问题出现的背景
  2. 报错现象
  3. 修改配置以顺利启动数据库

问题出现的背景

ONgDB集群中Leader节点,存储快速增加,导致数据占满磁盘,产生大量错误事务日志,导致服务无法正常重启。

报错现象

2020-07-14 06:46:54.549+0000 ERROR Failed to start Neo4j: Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@e09f1b6' was successfully initialized, but failed to start. Please see the attached cause exception "null. At position LogPosition{logVersion=10306, byteOffset=88858441} and entry version V3_0_10". Starting Neo4j failed: Component 'org.neo4j.server.database.LifecycleManagingDatabase@e09f1b6' was successfully initialized, but failed to start. Please see the attached cause exception "null. At position LogPosition{logVersion=10306, byteOffset=88858441} and entry version V3_0_10".

Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.server.database.LifecycleManagingDatabase@e09f1b6' was successfully initialized, but failed to start. Please see the attached cause exception "null. At position LogPosition{logVersion=10306, byteOffset=88858441} and entry version V3_0_10".
        at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:473)
        at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:111)
        at org.neo4j.server.AbstractNeoServer.start(AbstractNeoServer.java:180)
        ... 3 more
Caused by: java.lang.RuntimeException: Error starting org.neo4j.graphdb.facade.GraphDatabaseFacadeFactory, /home/ongdb/ongdb-enterprise-3.5.17/data/databases
        at org.neo4j.graphdb.facade.GraphDatabaseFacadeFactory.initFacade(GraphDatabaseFacadeFactory.java:232)
        at org.neo4j.causalclustering.core.OpenEnterpriseCoreGraphDatabase.<init>(OpenEnterpriseCoreGraphDatabase.java:52)
        at org.neo4j.server.enterprise.OpenEnterpriseGraphFactory.newGraphDatabase(OpenEnterpriseGraphFactory.java:43)
        at org.neo4j.server.database.LifecycleManagingDatabase.start(LifecycleManagingDatabase.java:90)
        at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:452)
        ... 5 more
Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component 'org.neo4j.kernel.NeoStoreDataSource@77c3c037' was successfully initialized, but failed to start. Please see the attached cause exception "null. At position LogPosition{logVersion=10306, byteOffset=88858441} and entry version V3_0_10".
        at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:473)
        at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:111)
        at org.neo4j.kernel.impl.transaction.state.DataSourceManager.start(DataSourceManager.java:116)
        at org.neo4j.causalclustering.catchup.storecopy.LocalDatabase.start(LocalDatabase.java:103)
        at org.neo4j.causalclustering.core.state.CoreLife.start0(CoreLife.java:97)
        at org.neo4j.kernel.lifecycle.SafeLifecycle.transition(SafeLifecycle.java:124)
        at org.neo4j.kernel.lifecycle.SafeLifecycle.start(SafeLifecycle.java:138)
        at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:452)
        at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:111)
        at org.neo4j.graphdb.facade.GraphDatabaseFacadeFactory.initFacade(GraphDatabaseFacadeFactory.java:227)
        ... 9 more

修改配置以顺利启动数据库

此配置会截断数据库事务日志,谨慎使用

unsupported.dbms.tx_log.fail_on_corrupted_log_files=false