Gremlin Console: gremlin> :remote connect tinkerpop.server conf/remote.yaml ==>Configured localhost/127.0.0.1:8182
gremlin> :remote console
==>All scripts will now be sent to Gremlin Server - [localhost/127.0.0.1:8182] - type ':remote console' to return to local mode
gremlin> graph
==>standardjanusgraph[cql:[cassandra.us-east-2.amazonaws.com]]
gremlin> g = graph.traversal()
==>graphtraversalsource[standardjanusgraph[cql:[cassandra.us-east-2.amazonaws.com]], standard]
gremlin> g.addV('student').property('name', 'Jeffery').property('GPA', 'A+');
Lock write retry count exceeded
My settings are like below
janusgraph.storage.cql.ssl.enabled: "true"
janusgraph.index.search.hostname: jce-elastic
janusgraph.storage.cql.local-datacenter: "us-east-2"
janusgraph.storage.cql.partitioner-name: DefaultPartitioner
janusgraph.storage.cql.metadata-schema-enabled: "false"
janusgraph.storage.cql.metadata-token-map-enabled: "false"
janusgraph.storage.cql.only-use-local-consistency-for-system-operations: "true"
janusgraph.log.janusgraph.key-consistent: "true"
janusgraph.log.tx.key-consistent: "true"
janusgraph.storage.cql.read-consistency-level: "LOCAL_QUORUM"
janusgraph.storage.cql.write-consistency-level: "LOCAL_QUORUM"
janusgraph.graph.assign-timestamp: "false"
Following are the server logs
jce-janusgraph | 232996 [gremlin-server-exec-4] WARN org.janusgraph.diskstorage.locking.consistentkey.ConsistentKeyLocker - Lock write succeeded but took too long: duration PT0.248S exceeded limit PT0.1S
jce-janusgraph | 233251 [gremlin-server-exec-4] WARN org.janusgraph.diskstorage.locking.consistentkey.ConsistentKeyLocker - Lock write succeeded but took too long: duration PT0.255S exceeded limit PT0.1S
jce-janusgraph | 233499 [gremlin-server-exec-4] WARN org.janusgraph.diskstorage.locking.consistentkey.ConsistentKeyLocker - Lock write succeeded but took too long: duration PT0.248S exceeded limit PT0.1S
jce-janusgraph | 233747 [gremlin-server-exec-4] ERROR org.janusgraph.graphdb.database.StandardJanusGraph - Could not commit transaction [1] due to exception
jce-janusgraph | org.janusgraph.diskstorage.locking.TemporaryLockingException: Temporary locking failure
jce-janusgraph | at org.janusgraph.diskstorage.locking.AbstractLocker.writeLock(AbstractLocker.java:306)
jce-janusgraph | at org.janusgraph.diskstorage.locking.consistentkey.ExpectedValueCheckingStore.acquireLock(ExpectedValueCheckingStore.java:102)
jce-janusgraph | at org.janusgraph.diskstorage.keycolumnvalue.KCVSProxy.acquireLock(KCVSProxy.java:52)
jce-janusgraph | at org.janusgraph.diskstorage.BackendTransaction.acquireIndexLock(BackendTransaction.java:258)
jce-janusgraph | at org.janusgraph.graphdb.database.StandardJanusGraph.prepareCommit(StandardJanusGraph.java:634)
jce-janusgraph | at org.janusgraph.graphdb.database.StandardJanusGraph.commit(StandardJanusGraph.java:755)
jce-janusgraph | at org.janusgraph.graphdb.transaction.StandardJanusGraphTx.commit(StandardJanusGraphTx.java:1525)
jce-janusgraph | at org.janusgraph.graphdb.tinkerpop.JanusGraphBlueprintsGraph$GraphTransaction.doCommit(JanusGraphBlueprintsGraph.java:322)
jce-janusgraph | at org.apache.tinkerpop.gremlin.structure.util.AbstractTransaction.commit(AbstractTransaction.java:104)
jce-janusgraph | at org.janusgraph.graphdb.tinkerpop.JanusGraphBlueprintsGraph$GraphTransaction.commit(JanusGraphBlueprintsGraph.java:300)
The configuration below should work, but it requires that the RandomPartitoner is enabled (tested using JanusGraph 0.6.1)
https://docs.aws.amazon.com/keyspaces/latest/devguide/working-with-partitioners.html
storage.hostname=cassandra.us-east-1.amazonaws.com
storage.port=9142
storage.cql.ssl.enabled=true
storage.cql.ssl.truststore.location=cassandra_truststore.jks
storage.cql.ssl.truststore.password=mySecret
graph.assign-timestamp=false
storage.cql.only-use-local-consistency-for-system-operations=true
storage.cql.read-consistency-level=LOCAL_QUORUM
storage.cql.write-consistency-level=LOCAL_QUORUM
log.janusgraph.key-consistent=true
log.tx.key-consistent=true
storage.cql.metadata-schema-enabled=true
storage.cql.metadata-token-map-enabled=true
storage.cql.partitioner-name=RandomPartitioner