getRelationships()上neo4j IndexOutOfBoundsException的原因
这在getRelationships()上neo4j IndexOutOfBoundsException的原因,neo4j,Neo4j,这在neo4j版本2.3.0-M02 为什么这个代码 Iterable<Relationship> rels = node.getRelationships( ... any various args ... ); for (Relationship rel : rels) { // Some computation } Iterable rels=node.getrelations(…任何不同的参数…); for(关系rel:rels){ //一些计算 } 。。。导致堆
neo4j
版本2.3.0-M02
为什么这个代码
Iterable<Relationship> rels = node.getRelationships( ... any various args ... );
for (Relationship rel : rels) {
// Some computation
}
Iterable rels=node.getrelations(…任何不同的参数…);
for(关系rel:rels){
//一些计算
}
。。。导致堆栈跟踪的原因是什么
Caused by: java.lang.IndexOutOfBoundsException
at org.neo4j.io.pagecache.impl.muninn.MuninnPageCursor.setOffset(MuninnPageCursor.java:410)
at org.neo4j.kernel.impl.store.RelationshipGroupStore.getRecord(RelationshipGroupStore.java:117)
at org.neo4j.kernel.impl.store.RelationshipGroupStore.getRecord(RelationshipGroupStore.java:77)
at org.neo4j.kernel.impl.api.StoreRelationshipIterable$DenseIterator.<init>(StoreRelationshipIterable.java:214)
at org.neo4j.kernel.impl.api.StoreRelationshipIterable.iterator(StoreRelationshipIterable.java:96)
at org.neo4j.kernel.impl.api.StoreRelationshipIterable.iterator(StoreRelationshipIterable.java:76)
at org.neo4j.kernel.impl.api.store.DiskLayer.nodeListRelationships(DiskLayer.java:241)
at org.neo4j.kernel.impl.api.store.CacheLayer.nodeListRelationships(CacheLayer.java:424)
at org.neo4j.kernel.impl.api.StateHandlingStatementOperations.nodeGetRelationships(StateHandlingStatementOperations.java:925)
at org.neo4j.kernel.impl.api.StateHandlingStatementOperations.nodeGetRelationships(StateHandlingStatementOperations.java:933)
at org.neo4j.kernel.impl.api.ConstraintEnforcingEntityOperations.nodeGetRelationships(ConstraintEnforcingEntityOperations.java:426)
at org.neo4j.kernel.impl.api.OperationsFacade.nodeGetRelationships(OperationsFacade.java:361)
at org.neo4j.kernel.impl.core.NodeProxy$2.iterator(NodeProxy.java:194)
at org.neo4j.kernel.impl.core.NodeProxy$2.iterator(NodeProxy.java:186)
原因:java.lang.IndexOutOfBoundsException
位于org.neo4j.io.pagecache.impl.muninn.MuninnPageCursor.setOffset(MuninnPageCursor.java:410)
位于org.neo4j.kernel.impl.store.RelationshipGroupStore.getRecord(RelationshipGroupStore.java:117)
位于org.neo4j.kernel.impl.store.RelationshipGroupStore.getRecord(RelationshipGroupStore.java:77)
位于org.neo4j.kernel.impl.api.StoreRelationshipIterable$denseInterator。(StoreRelationshipIterable.java:214)
位于org.neo4j.kernel.impl.api.StoreRelationshipIterable.iterator(StoreRelationshipIterable.java:96)
位于org.neo4j.kernel.impl.api.StoreRelationshipIterable.iterator(StoreRelationshipIterable.java:76)
位于org.neo4j.kernel.impl.api.store.DiskLayer.nodeListRelationships(DiskLayer.java:241)
位于org.neo4j.kernel.impl.api.store.CacheLayer.nodelistreationships(CacheLayer.java:424)
位于org.neo4j.kernel.impl.api.StateHandlingStatementOperations.nodeGetRelationships(StateHandlingStatementOperations.java:925)
位于org.neo4j.kernel.impl.api.StateHandlingStatementOperations.nodeGetRelationships(StateHandlingStatementOperations.java:933)
位于org.neo4j.kernel.impl.api.ConstraintEnforcingEntityOperations.nodeGetRelationships(ConstraintEnforcingEntityOperations.java:426)
位于org.neo4j.kernel.impl.api.OperationsFacade.nodeGetRelationships(OperationsFacade.java:361)
位于org.neo4j.kernel.impl.core.NodeProxy$2.iterator(NodeProxy.java:194)
位于org.neo4j.kernel.impl.core.NodeProxy$2.iterator(NodeProxy.java:186)
更新:
所以,升级并检查这是否适合您。您可以添加一个简单的
system.out.println(“调试”)代码>在for循环中?看看它是否至少做过一次。问题可能来自一个空的结果集,因为它实际上没有进入循环…您肯定应该将代码升级到2.3.0-M03。里程碑版本不稳定-可能出现错误。所以,升级Neo4j并检查-可能bug已经修复,不再有例外。除了@FylmTM所说的,我建议在您的商店目录上运行一致性检查程序,有关详细信息,请参阅@FylmTM升级到下一个里程碑似乎已经修复了此问题。如果您想将此作为回答,我接受:)