2

我有一个Batch Inserter在 中构建数据模型Neo4j,但在节点之间创建时出现错误relationship,不是所有节点,relationships而是其中一些节点。

这是一个例外:

org.neo4j.kernel.impl.nioneo.store.InvalidRecordException: RelationshipRecord[someID] not in use

它被扔在那一行:

long relId = inserter.createRelationship(node1ID, node2ID,RelTypes.My_REL,node1TOnode2RelProps);

任何帮助将不胜感激..


这是堆栈跟踪

org.neo4j.kernel.impl.nioneo.store.InvalidRecordException: RelationshipRecord[454889] not in use
at org.neo4j.kernel.impl.nioneo.store.RelationshipStore.getRecord(RelationshipStore.java:254)
at org.neo4j.kernel.impl.nioneo.store.RelationshipStore.getRecord(RelationshipStore.java:87)
at org.neo4j.unsafe.batchinsert.BatchInserterImpl.connect(BatchInserterImpl.java:783)
at org.neo4j.unsafe.batchinsert.BatchInserterImpl.connectRelationship(BatchInserterImpl.java:773)
at org.neo4j.unsafe.batchinsert.BatchInserterImpl.createRelationship(BatchInserterImpl.java:758)
at com.arrow.cloud.rec.bl.threads.PassRelationCall.buildPassRelation(PassRelationCall.java:395)
at com.arrow.cloud.rec.bl.threads.PassRelationCall.call(PassRelationCall.java:51)
at com.arrow.cloud.rec.bl.threads.PassRelationCall.call(PassRelationCall.java:1)
at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
at java.util.concurrent.FutureTask.run(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.lang.Thread.run(Unknown Source)
4

1 回答 1

0

您是否在批量插入中使用多个线程?如果是这样,那么事情就会破裂。我在堆栈跟踪中发现了一个 ThreadPoolExecutor,所以这就是我问的原因。

于 2013-09-09T06:17:54.000 回答