2015-06-16 69 views
4

我想从csv文件中使用neo4导入工具导入一个新的neo4j数据库上的130M节点和200M关系,它在进程中卡住了。neo4j导入失败Prepare节点索引阶段

过程的输出:

Nodes [>:3.35 MB/s---|PROPERTIES(2)======|*NODE:1007.08 MB------|LABEL SCAN-----|v:7.46 MB/s(2)======]131M 
Done in 1h 35m 47s 332ms 
Prepare node index 
[*SORT:1.47 GB---------------------------------------------------------------------------------] 87M 

的messages.log

2015-06-15 10:38:56.423+0000 INFO [org.neo4j]: Import starting 
2015-06-15 10:38:56.537+0000 INFO [org.neo4j]: Creating new db @ /var/user/neo/graph22.db/neostore 
2015-06-15 10:38:57.264+0000 INFO [org.neo4j]: Missing counts store, rebuilding it. 
2015-06-15 10:38:57.536+0000 INFO [org.neo4j]: No lucene scan store index found, this might just be first use. Preparing to rebuild. 
2015-06-15 10:38:57.581+0000 INFO [org.neo4j]: No lucene scan store index found, this might just be first use. Preparing to rebuild. 
2015-06-15 10:38:57.793+0000 INFO [org.neo4j]: Rebuilding lucene scan store, this may take a while 
2015-06-15 10:38:57.796+0000 INFO [org.neo4j]: Lucene scan store rebuilt (roughly -1 nodes) 
2015-06-15 18:29:33.509+0000 INFO [org.neo4j]: About to rotate counts store at transaction 1 to [/var/user/neo/graph22.db/neostore.counts.db.b], from [/var/user/neo/graph22.db/neostore.counts.db.a]. 
2015-06-15 18:29:33.516+0000 INFO [org.neo4j]: Successfully rotated counts store at transaction 1 to [/var/user/neo/graph22.db/neostore.counts.db.b], from [/var/user/neo/graph22.db/neostore.counts.db.a]. 
2015-06-15 18:29:33.771+0000 ERROR [org.neo4j]: Error during import null 
java.lang.StackOverflowError 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.partition(ParallelSort.java:193) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:243) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 
     at org.neo4j.unsafe.impl.batchimport.cache.idmapping.string.ParallelSort.recursiveQsort(ParallelSort.java:246) 

是什么导致进程失败的内容?有什么我可以做,以解决这个问题?

我使用的Neo4j社区-2.2.2

+0

您正在使用哪个2.2.x版本? –

+0

我正在使用neo4j-community-2.2.2 –

+0

您的节点ID是如何看起来一般的以及您使用的是哪种--id-type? –

回答

2

我有同样的问题,但与2.2.3版本。我种解决它通过编辑文件斌/ Neo4j的进口和增加更多的堆栈空间(多堆为好,只是因为我有它):

EXTRA_JVM_ARGUMENTS="-Dfile.encoding=UTF-8 -Xmx8g -Xss128m" 

但现在我有一个不同的问题 - 递归1023级的深度(我只分选了大约5亿个节点),我不确定排序是否会完成:)