Piyush Mathur
2018-07-26 10:18:00 UTC
## Use case
`Blueprints implementation` of orient graph should be able to connect to
cluster and create vertices and edges on the graph `concurrently` (In our
case there are `16 threads` each with its `own graph instance` modifying
the graph) . Client app is handling ONeedRetryException and all the
server/client side configuration is unmodified. Moreover, it works `fine`
with `OrientDB v2.2.35`.
## Actual behavior
Three server nodes are able to join cluster and talk to each other (sync
databases) but client throws a exception while creating graph.
Caused by:
com.orientechnologies.orient.server.distributed.task.ODistributedRecordLockedException:
Timeout (0ms) on acquiring lock on record #-1:-1 on server 'DeadLock'. It
is locked by request 2.1301
DB name="apmnew1"
DB name="apmnew1"
at sun.reflect.GeneratedConstructorAccessor67.newInstance(Unknown
Source) ~[?:?]
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
~[?:1.8.0_152]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
~[?:1.8.0_152]
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.throwSerializedException(OChannelBinaryAsynchClient.java:318)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.handleStatus(OChannelBinaryAsynchClient.java:275)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:191)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:153)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(OStorageRemote.java:1812)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.lambda$networkOperationRetryTimeout$2(OStorageRemote.java:226)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:285)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationRetryTimeout(OStorageRemote.java:214)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationNoRetry(OStorageRemote.java:239)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.commit(OStorageRemote.java:997)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.db.document.ODatabaseDocumentAbstract.internalCommit(ODatabaseDocumentAbstract.java:2744)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.tx.OTransactionOptimistic.doCommit(OTransactionOptimistic.java:534)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.tx.OTransactionOptimistic.commit(OTransactionOptimistic.java:100)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.db.document.ODatabaseDocumentAbstract.commit(ODatabaseDocumentAbstract.java:2232)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.db.document.ODatabaseDocumentAbstract.commit(ODatabaseDocumentAbstract.java:2202)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:734)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.tinkerpop.blueprints.impls.orient.OrientTransactionalGraph.commit(OrientTransactionalGraph.java:184)
~[orientdb-graphdb-3.0.4.jar:3.0.4]
`Blueprints implementation` of orient graph should be able to connect to
cluster and create vertices and edges on the graph `concurrently` (In our
case there are `16 threads` each with its `own graph instance` modifying
the graph) . Client app is handling ONeedRetryException and all the
server/client side configuration is unmodified. Moreover, it works `fine`
with `OrientDB v2.2.35`.
## Actual behavior
Three server nodes are able to join cluster and talk to each other (sync
databases) but client throws a exception while creating graph.
Caused by:
com.orientechnologies.orient.server.distributed.task.ODistributedRecordLockedException:
Timeout (0ms) on acquiring lock on record #-1:-1 on server 'DeadLock'. It
is locked by request 2.1301
DB name="apmnew1"
DB name="apmnew1"
at sun.reflect.GeneratedConstructorAccessor67.newInstance(Unknown
Source) ~[?:?]
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
~[?:1.8.0_152]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
~[?:1.8.0_152]
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.throwSerializedException(OChannelBinaryAsynchClient.java:318)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.handleStatus(OChannelBinaryAsynchClient.java:275)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:191)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.binary.OChannelBinaryAsynchClient.beginResponse(OChannelBinaryAsynchClient.java:153)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.beginResponse(OStorageRemote.java:1812)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.lambda$networkOperationRetryTimeout$2(OStorageRemote.java:226)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.baseNetworkOperation(OStorageRemote.java:285)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationRetryTimeout(OStorageRemote.java:214)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.networkOperationNoRetry(OStorageRemote.java:239)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.client.remote.OStorageRemote.commit(OStorageRemote.java:997)
~[orientdb-client-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.db.document.ODatabaseDocumentAbstract.internalCommit(ODatabaseDocumentAbstract.java:2744)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.tx.OTransactionOptimistic.doCommit(OTransactionOptimistic.java:534)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.tx.OTransactionOptimistic.commit(OTransactionOptimistic.java:100)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.db.document.ODatabaseDocumentAbstract.commit(ODatabaseDocumentAbstract.java:2232)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.db.document.ODatabaseDocumentAbstract.commit(ODatabaseDocumentAbstract.java:2202)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:734)
~[orientdb-core-3.0.4.jar:3.0.4]
at
com.tinkerpop.blueprints.impls.orient.OrientTransactionalGraph.commit(OrientTransactionalGraph.java:184)
~[orientdb-graphdb-3.0.4.jar:3.0.4]
--
---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orient-database+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.
---
You received this message because you are subscribed to the Google Groups "OrientDB" group.
To unsubscribe from this group and stop receiving emails from it, send an email to orient-database+***@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.