2014-09-26 3 views
-1

debian 서버에/var 디스크가 가득 차서 neo4j가 예상대로 멈 춥니 다. 디스크의 공간을 확보했지만 neo4j 서버가 로그에 아래 오류를 던지기 시작하지 않습니다. 내가 죽일지도 모르는 서버에서 실행되는 java 또는 neo4j 프로세스가 없습니다.디스크가 가득 찬 후 neo4j가 시작되지 않음

약 6000 개의 노드가있는 지난 6 개월 동안 내 neo4j 설정이 안정적이었습니다. 나는 자바 측에서 거의 초보자가 아니므로 기본적인 것을 놓친 경우 나에게 알려주십시오. 명령 줄에서

출력 : Neo4j 그래프 데이터베이스를 다시 시작 서비스 neo4j 서비스를 다시 시작

: neo4jWARNING : 허용 최대 1024 열려있는 파일 40 000의 최소 권장합니다. Neo4j 매뉴얼을 참조하십시오. 경고! 지원되지 않는 Java 런타임을 사용 중입니다. * Oracle (R) Java (TM) 7을 사용하여 Neo4j Server를 실행하십시오. "Java Platform (JDK) 7"다운로드 :
http://www.oracle.com/technetwork/java/javase/downloads/index.html * Neo4j 서버 설치 지침은 http://docs.neo4j.org/을 참조하십시오. 추가 JVM 인수 사용 : -server -XX : + DisableExplicitGC -Dorg.neo4j.server.properties = conf/neo4j-server.properties -Djava.util.logging.config.file = conf/logging.properties -Dlog4j.configuration = 파일 : conf/log4j.properties -XX : + UseConcMarkSweepGC -XX : + CMSClassUnloadingEnabled Neo4j 서버 시작 중 ... 경고 : 사용자 프로세스가 변경되지 않음 [4733] ... 서버 대기 중 ..... 시작 실패 120 초 이내에. Neo4j 서버가 시작되지 않았을 수 있습니다. 로그를 확인하십시오. 실패한!

로그 파일 :

Sep 26, 2014 3:31:38 PM org.neo4j.server.logging.Logger log 
SEVERE: Failed to start Neo Server on port [7474] 
Sep 26, 2014 3:33:00 PM org.neo4j.server.logging.Logger log 
WARNING: You are using an unsupported Java runtime. Please use Oracle(R) Java(TM) Runtime Environment 7. 
Sep 26, 2014 3:33:00 PM org.neo4j.server.logging.Logger log 
INFO: Setting startup timeout to: 120000ms based on -1 
Sep 26, 2014 3:33:03 PM org.neo4j.server.logging.Logger log 
SEVERE: 
org.neo4j.server.ServerStartupException: Starting Neo4j Server failed: Error starting org.neo4j.kernel.EmbeddedGraphDatabase, /var/lib/neo4j/data/graph.db 
    at org.neo4j.server.AbstractNeoServer.start(AbstractNeoServer.java:218) 
    at org.neo4j.server.Bootstrapper.start(Bootstrapper.java:87) 
    at org.neo4j.server.Bootstrapper.main(Bootstrapper.java:50) 
Caused by: java.lang.RuntimeException: Error starting org.neo4j.kernel.EmbeddedGraphDatabase, /var/lib/neo4j/data/graph.db 
    at org.neo4j.kernel.InternalAbstractGraphDatabase.run(InternalAbstractGraphDatabase.java:330) 
    at org.neo4j.kernel.EmbeddedGraphDatabase.<init>(EmbeddedGraphDatabase.java:63) 
    at org.neo4j.graphdb.factory.GraphDatabaseFactory$1.newDatabase(GraphDatabaseFactory.java:92) 
    at org.neo4j.graphdb.factory.GraphDatabaseBuilder.newGraphDatabase(GraphDatabaseBuilder.java:198) 
    at org.neo4j.kernel.impl.recovery.StoreRecoverer.recover(StoreRecoverer.java:115) 
    at org.neo4j.server.preflight.PerformRecoveryIfNecessary.run(PerformRecoveryIfNecessary.java:59) 
    at org.neo4j.server.preflight.PreFlightTasks.run(PreFlightTasks.java:70) 
    at org.neo4j.server.AbstractNeoServer.runPreflightTasks(AbstractNeoServer.java:333) 
    at org.neo4j.server.AbstractNeoServer.start(AbstractNeoServer.java:152) 
    ... 2 more 
Caused by: org.neo4j.kernel.lifecycle.LifecycleException: Component '[email protected]' was successfully initialized, but failed to start. Please see attached cause exception. 
    at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:509) 
    at org.neo4j.kernel.lifecycle.LifeSupport.start(LifeSupport.java:115) 
    at org.neo4j.kernel.InternalAbstractGraphDatabase.run(InternalAbstractGraphDatabase.java:307) 
    ... 10 more 
Caused by: org.neo4j.graphdb.TransactionFailureException: Unable to start TM 
    at org.neo4j.kernel.impl.transaction.TxManager.openLog(TxManager.java:824) 
    at org.neo4j.kernel.impl.transaction.TxManager.start(TxManager.java:198) 
    at org.neo4j.kernel.lifecycle.LifeSupport$LifecycleInstance.start(LifeSupport.java:503) 
    ... 12 more 
Caused by: java.io.IOException: Branch[����] found for [GlobalId[NENEOK|5930761323375553953|5569093129887285248|13248], BranchId[ ]] but no record list found in map 
    at org.neo4j.kernel.impl.transaction.TxLog.readBranchAddRecordInto(TxLog.java:520) 
    at org.neo4j.kernel.impl.transaction.TxLog.getDanglingRecords(TxLog.java:440) 
    at org.neo4j.kernel.impl.transaction.TxLog.recreateActiveTransactionState(TxLog.java:133) 
    at org.neo4j.kernel.impl.transaction.TxLog.<init>(TxLog.java:128) 
    at org.neo4j.kernel.impl.transaction.TxManager.openLog(TxManager.java:796) 
    ... 14 more 

Sep 26, 2014 3:33:03 PM org.neo4j.server.logging.Logger log 
SEVERE: Failed to start Neo Server on port [7474] 

나는 내가 업그레이드해야한다고 생각 오픈 JDK 1.7 런타임 환경을 사용하고 있지만 내가 모든 것을 잘 이전 작업 이후 오류의 원인이 무엇인지 이해하지 않습니다. 어떤 도움을 주셔서 감사합니다!

+0

은 트랜잭션 로그 (tm_tx_log.1 또는 tm_tx_log.2)를 삭제하여 서비스를 시작할 수있었습니다. 이것이 올바른 접근 방법인지 확실하지 않습니다. – DevD

답변

1

100 % 확신하지 않는 한 graph.db 디렉토리 안의 어떤 것도 수동으로 수정해서는 안됩니다.

데이터 저장소 디렉터리가 계속 증가하지 않도록하려면 keep_logical_logs의 설정을 neo4j.properties에 확인하십시오 (http://docs.neo4j.org/chunked/stable/configuration-logical-logs.html 참조).

온라인 백업 또는 클러스터 동기화에 논리 로그가 필요하지 않으면 nioneo_logical.log.v* 파일을 삭제하지 않고 저장하면됩니다. 먼저 백업을하십시오!

열린 파일 한도 인 http://docs.neo4j.org/chunked/stable/linux-performance-guide.html#_setting_the_number_of_open_files에 대한 설정도 확인하십시오.

디스크 공간이 부족할 때 데이터 저장소를 손상시킬 수있는 버그가있는 구형 Neo4j 버전이있었습니다. 이러한 상황이 발생하면 수동으로 이진 수준 (Neo4j 내부에 대한 많은 지식이 필요함)에서 수정하거나 디스크를 모두 사용하기 전에 이전 백업을 복원해야합니다.

+0

답변 주셔서 감사합니다. neo4j 버전은 2.0.1입니다. – DevD

+0

링크에 제공된 지침에 따라 파일 제한을 늘리려고 시도했지만 서버를 다시 시작했지만 여전히 경고 메시지가 표시됩니다. 최대 1024 개의 파일을 열 수 있으며 최소 40,000 개를 권장합니다. . 내가 무엇을 놓칠 수 있었는지 어떤 생각. – DevD

+1

우분투 (그리고 최근의 데비안도 마찬가지입니다)'/ etc/security/limits.d/neo4j.conf'에서 설정을 변경해야합니다. 이 파일에서 올바른 사용자 이름을 사용해야합니다. –

관련 문제