pal*_*lla 6 cassandra tinkerpop tinkerpop3 janusgraph
我有这样的高级代码。
MethodXyz() {
updateVertex(A, props1)
commit
// some other code
updateVertex(A, props2)
commit
// do something else - long running
}
Run Code Online (Sandbox Code Playgroud)
对于不同的顶点,从 10+ 个不同的线程调用此方法,特别是通过用 10+ 个线程初始化的 Java 线程 ExecutorSerevice
在上述方法的第二次提交中,我总是从 10+ 个线程中随机地从 4-5 个线程中得到如下异常。
我不对顶点属性使用任何唯一性约束
我确实已将顶点属性“名称”定义为唯一的字符串数据类型(应用程序代码在 Janusgraph 中创建属性键时无需使用任何唯一约束即可保证这种唯一性)
但是我使用这个属性键“name”构建索引
使用默认模式 make - 未定义显式模式
我试图找出为什么即使不同的线程更新完全不同的顶点(互斥)也会抛出永久锁异常,以及为什么当没有定义为唯一使用任何 janusgrpah 锁的属性键时会发生锁定异常。
org.janusgraph.core.JanusGraphException: Could not commit transaction due to exception during persistence**
at org.janusgraph.graphdb.transaction.StandardJanusGraphTx.commit(StandardJanusGraphTx.java:1385)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
at org.janusgraph.graphdb.tinkerpop.JanusGraphBlueprintsGraph$GraphTransaction.doCommit(JanusGraphBlueprintsGraph.java:272)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
at org.apache.tinkerpop.gremlin.structure.util.AbstractTransaction.commit(AbstractTransaction.java:104)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
at com.fujitsu.fnc.mlpce.tetopology.impl.GraphDBService.commit(GraphDBService.java:509)[119:com.fujitsu.fnc.mlpce.tetopology.impl:5.2.0.SNAPSHOT]
Caused by: org.janusgraph.core.JanusGraphException: Unexpected exception
at org.janusgraph.graphdb.database.StandardJanusGraph.commit(StandardJanusGraph.java:806)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
at org.janusgraph.graphdb.transaction.StandardJanusGraphTx.commit(StandardJanusGraphTx.java:1374)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
... 17 more
Caused by: org.janusgraph.diskstorage.locking.PermanentLockingException: Local lock contention**
at org.janusgraph.diskstorage.locking.AbstractLocker.writeLock(AbstractLocker.java:327)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
at org.janusgraph.diskstorage.locking.consistentkey.ExpectedValueCheckingStore.acquireLock(ExpectedValueCheckingStore.java:103)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
at org.janusgraph.diskstorage.keycolumnvalue.KCVSProxy.acquireLock(KCVSProxy.java:52)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
at org.janusgraph.diskstorage.BackendTransaction.acquireIndexLock(BackendTransaction.java:256)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
at org.janusgraph.graphdb.database.StandardJanusGraph.prepareCommit(StandardJanusGraph.java:572)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
at org.janusgraph.graphdb.database.StandardJanusGraph.commit(StandardJanusGraph.java:702)[488:org.janusgraph.janusgraph-core:5.2.0.SNAPSHOT]
... 18 more
Run Code Online (Sandbox Code Playgroud)
jansugraph 0.2.0 与 cassandra 后端
归档时间: |
|
查看次数: |
1241 次 |
最近记录: |