这个Neo4j批量加载器错误号是什么意思

时间:2013-10-22 05:12:23

标签: neo4j

我一直在使用Neo4j批量加载器一段时间,今晚开始遇到从新数据库导出构建我的图形的问题。运行它会产生以下结果:

> java -servjava -server -Xmx4G -jar ~/Dev/github.com/jexp/batch-import/target/batch-import-jar-with-dependencies.jar ./graph.db nodes.csv rels.csv node_index entities exact entities_idx.csv

Usage: Importer data/dir nodes.csv relationships.csv [node_index node-index-name fulltext|exact nodes_index.csv rel_index rel-index-name fulltext|exact rels_index.csv ....]
Using: Importer ./graph.db nodes.csv rels.csv node_index entities exact entities_idx.csv

Using Existing Configuration File
........................
Importing 2412268 Nodes took 4 seconds
.....................
Total import time: 9 seconds
Exception in thread "main" org.neo4j.graphdb.NotFoundException: id=2412269
    at org.neo4j.unsafe.batchinsert.BatchInserterImpl.getNodeRecord(BatchInserterImpl.java:917)
    at org.neo4j.unsafe.batchinsert.BatchInserterImpl.createRelationship(BatchInserterImpl.java:471)
    at org.neo4j.batchimport.Importer.importRelationships(Importer.java:136)
    at org.neo4j.batchimport.Importer.doImport(Importer.java:214)
    at org.neo4j.batchimport.Importer.main(Importer.java:78)

我能够成功运行其自己的存储库中包含的nodes.csv和rels.csv的批处理加载器,所以我认为问题出在我的rels.csv文件中。但是,它是一个非常大的文件,我想知道id = 2412269的含义,因为它似乎是诊断失败的最佳起点。

有什么想法吗?

_howard

2 个答案:

答案 0 :(得分:0)

这意味着在rels.csv文件中,您尝试为id = 2412269引用的节点创建关系。但是在nodes.csv文件中没有创建这样的节点。

答案 1 :(得分:0)

在与导入器的作者一起解决问题之后,事实证明问题是我在nodes.csv文件中有单个未转义的引号。因此,rels.csv记录指向无法在nodes.csv中创建的节点。不幸的是,控制台上报告的错误并不是导致问题的错误。