Ok I have gone down the path of

Setting this in my applicaiton config
- OGlobalConfiguration.DB_MVCC.setValue(false);

However this property doesn't exist in orient-core-2.0-M3 jar and I cant 
seem to find an alternate similarly named property however have added:

- OGlobalConfiguration.CACHE_LOCAL_ENABLED.setValue(false);
-Dcache.local.enabled=false

I am not keen to go down the retry path as that would mean messing around 
with spring-orient-data massively as i need to reload entities apply 
changes and resave.

However this does seem to aleviate the problem to a large extent requires 
further testing though but I am still getting the following exception.

2014-12-19 14:24:01.284 ERROR 2968 --- [nio-9000-exec-3] 
o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet 
[dispatcherServlet] in context with path [] threw exception [Request 
processing failed; nested exception is 
com.orientechnologies.orient.core.exception.ODatabaseException: Error on 
retrieving record #13:49482 (cluster: question)] with root cause
com.orientechnologies.common.concur.lock.OLockException: Cannot unlock a 
never acquired lock
at 
com.orientechnologies.orient.core.tx.OTransactionAbstract.unlockRecord(OTransactionAbstract.java:121)
at com.orientechnologies.orient.core.id.ORecordId.unlock(ORecordId.java:283)
at 
com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.unlockRecord(OAbstractPaginatedStorage.java:1535)
at 
com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.readRecord(OAbstractPaginatedStorage.java:1207)
at 
com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.readRecord(OAbstractPaginatedStorage.java:644)
at 
com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.executeReadRecord(ODatabaseDocumentTx.java:1497)
at 
com.orientechnologies.orient.core.tx.OTransactionNoTx.loadRecord(OTransactionNoTx.java:79)
at 
com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.load(ODatabaseDocumentTx.java:1367)
at 
com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.readRecord(ONetworkProtocolBinary.java:1365)
at 
com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.executeRequest(ONetworkProtocolBinary.java:299)
at 
com.orientechnologies.orient.server.network.protocol.binary.OBinaryNetworkProtocolAbstract.execute(OBinaryNetworkProtocolAbstract.java:201)
at com.orientechnologies.common.thread.OSoftThread.run(OSoftThread.java:65)
Is this related or different? and how does one troubleshoot aleviate this 
one as it also seems to prevent data being saved.

Regards Wendy

On Friday, 19 December 2014 12:59:50 UTC, Lvc@ wrote:
>
> Hi Wendy,
> OrientDB uses an optimistic approach (no lock on the server side), so you 
> should manage the situation another client/thread modified the same record 
> and just retry it again. Take a look at the documentation:
>
>
> http://www.orientechnologies.com/docs/last/orientdb.wiki/Troubleshooting-Java.html#oconcurrentmodificationexception-cannot-update-record-xy-in-storage-z-because-the-version-is-not-the-latest-probably-you-are-updating-an-old-record-or-it-has-been-modified-by-another-user-dbva-yourvb
>
> Lvc@
>
>
> On 19 December 2014 at 13:21, Wendy Cameron <[email protected] 
> <javascript:>> wrote:
>>
>> Hi All
>>
>> We are experiencing a continuos problem with the following exceptions:
>>
>> 2014-12-16 12:39:07.612 ERROR 4563 --- [nio-9000-exec-8] 
>> o.a.c.c.C.[.[.[/].[dispatcherServlet]    : Servlet.service() for servlet 
>> [dispatcherServlet] in context with path [] threw exception [Request 
>> processing failed; nested exception is 
>> com.orientechnologies.orient.core.exception.OConcurrentModificationException:
>>  
>> Cannot UPDATE the record #19:977 because the version is not the latest. 
>> Probably you are updating an old record or it has been modified by another 
>> user (db=v0 your=v11)] with root cause
>>
>> com.orientechnologies.orient.core.exception.OConcurrentModificationException:
>>  
>> Cannot UPDATE the record #19:977 because the version is not the latest. 
>> Probably you are updating an old record or it has been modified by another 
>> user (db=v0 your=v11)
>>     at 
>> com.orientechnologies.orient.core.conflict.OVersionRecordConflictStrategy.checkVersions(OVersionRecordConflictStrategy.java:54)
>>     at 
>> com.orientechnologies.orient.core.conflict.OVersionRecordConflictStrategy.onUpdate(OVersionRecordConflictStrategy.java:41)
>>     at 
>> com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.checkAndIncrementVersion(OAbstractPaginatedStorage.java:1777)
>>     at 
>> com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.doUpdateRecord(OAbstractPaginatedStorage.java:1417)
>>     at 
>> com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.commitEntry(OAbstractPaginatedStorage.java:1856
>>     at 
>> com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.commit(OAbstractPaginatedStorage.java:860)
>>     at 
>> com.orientechnologies.orient.core.tx.OTransactionOptimistic.doCommit(OTransactionOptimistic.java:455)
>>     at 
>> com.orientechnologies.orient.core.tx.OTransactionOptimistic.commit(OTransactionOptimistic.java:142)
>>     at 
>> com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2261)
>>     at 
>> com.orientechnologies.orient.core.db.document.ODatabaseDocumentTx.commit(ODatabaseDocumentTx.java:2231)
>>     at 
>> com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.commit(ONetworkProtocolBinary.java:1009)
>>     at 
>> com.orientechnologies.orient.server.network.protocol.binary.ONetworkProtocolBinary.executeRequest(ONetworkProtocolBinary.java:342)
>>     at 
>> com.orientechnologies.orient.server.network.protocol.binary.OBinaryNetworkProtocolAbstract.execute(OBinaryNetworkProtocolAbstract.java:201)
>>     at 
>> com.orientechnologies.common.thread.OSoftThread.run(OSoftThread.java:65)
>> We are using OrientDB 2.0 - M3 we are also doing all our persisting 
>> through spring-orient-data and we see this message frequently but not 
>> deterministically. I.E we dont get it every time we save.
>> We have reduced the web server down to a single thread using
>>
>> server.tomcat.max-threads: 1
>>
>> We are also certain from test cases this does not occur in a single 
>> threaded environment and the above fix does seem to eleviate the problem.
>>
>> Does anyone know what the issue have a suggested work around thoughts on 
>> how we can trouble shoot this?
>>
>>
>> Regards Wendy
>>
>>
>>  -- 
>>
>> --- 
>> 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 [email protected] <javascript:>.
>> 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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to