-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Open
Labels
Description
It is recommended in the doc to disable transactions for large graph iteration when using the berkeley backend:
However when I have this config on, I can read with g.V().count() but not add vertex with label g.addV("fake label")
, strangely enough g.addV()
works.
I have tested this on version 1.1.0 and 1.2.0
Config:
- JANUS_PROPS_TEMPLATE=berkeleyje
- janusgraph.storage.transactions=false
Did I miss some other config or does disable transaction mean read-only mode ? at the moment it feels like a bug to me.
Stack Trace
org.janusgraph.diskstorage.PermanentBackendException: BerkeleyJE does not support non-transactional for multi threaded tx
at org.janusgraph.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:210)
at org.janusgraph.diskstorage.berkeleyje.BerkeleyJEStoreManager.beginTransaction(BerkeleyJEStoreManager.java:57)
at org.janusgraph.diskstorage.keycolumnvalue.keyvalue.OrderedKeyValueStoreManagerAdapter.beginTransaction(OrderedKeyValueStoreManagerAdapter.java:75)
at org.janusgraph.diskstorage.Backend.beginTransaction(Backend.java:606)
at org.janusgraph.graphdb.database.StandardJanusGraph.openBackendTransaction(StandardJanusGraph.java:483)
at org.janusgraph.graphdb.database.StandardJanusGraph.newTransaction(StandardJanusGraph.java:473)
at org.janusgraph.graphdb.database.StandardJanusGraph$1.retrieveSchemaByName(StandardJanusGraph.java:500)
at org.janusgraph.graphdb.database.cache.StandardSchemaCache.getSchemaId(StandardSchemaCache.java:111)
at org.janusgraph.graphdb.transaction.StandardJanusGraphTx.getSchemaVertex(StandardJanusGraphTx.java:1099)
at org.janusgraph.graphdb.transaction.StandardJanusGraphTx.getVertexLabel(StandardJanusGraphTx.java:1234)
at org.janusgraph.graphdb.transaction.StandardJanusGraphTx.getOrCreateVertexLabel(StandardJanusGraphTx.java:1239)
at org.janusgraph.graphdb.tinkerpop.JanusGraphBlueprintsTransaction.addVertex(JanusGraphBlueprintsTransaction.java:135)
at org.janusgraph.graphdb.tinkerpop.JanusGraphBlueprintsGraph.addVertex(JanusGraphBlueprintsGraph.java:143)
at org.janusgraph.graphdb.tinkerpop.JanusGraphBlueprintsGraph.addVertex(JanusGraphBlueprintsGraph.java:59)
at org.apache.tinkerpop.gremlin.process.traversal.step.map.AddVertexStartStep.processNextStart(AddVertexStartStep.java:109)
at org.apache.tinkerpop.gremlin.process.traversal.step.util.AbstractStep.hasNext(AbstractStep.java:155)
at org.apache.tinkerpop.gremlin.process.traversal.util.DefaultTraversal.hasNext(DefaultTraversal.java:192)
at org.apache.tinkerpop.gremlin.server.op.AbstractOpProcessor.handleIterator(AbstractOpProcessor.java:98)
at org.apache.tinkerpop.gremlin.server.op.AbstractEvalOpProcessor.lambda$evalOpInternal$6(AbstractEvalOpProcessor.java:267)
at org.apache.tinkerpop.gremlin.groovy.engine.GremlinExecutor.lambda$eval$0(GremlinExecutor.java:337)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
at java.base/java.util.concurrent.FutureTask.run(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
at java.base/java.lang.Thread.run(Unknown Source)```
andrei124