Hi Hung, Unfortunately I cannot share the code due to project security reasons.
To be more precise, we have a single thread with a *single* connection. After further investigations, we are in a part of the code where we have the following situation : 1. A -> B (read : vertex A is linked to B with an edge) 2. A&C -> B (now A and C are linked to B with one edge each) 3. update of B : this is where the exception is thrown. Is it clearer ? On Tuesday, March 8, 2016 at 5:02:45 PM UTC+1, Hung Tran wrote: > > Hi matthieu, > > What Michela said is exactly right. You will need to find it out, it is > not too hard to figure it out. From Studio, you could make a query to check > version of that row, your row version in your code should be smaller than > the row current version in your database at commit time, that's a reason > why you got this exception. > > With a single thread client, you may have two instances of the same row > loaded by different connections in your context, and one of your logic is > trying to persist the one with older version. > > Could you upload a sample code to duplicate the error here? > > My Best, > Hung Tran > > On Tuesday, March 8, 2016 at 6:47:48 PM UTC+7, matthieu marseille wrote: >> >> Hi all, >> >> You'll find attached to this post the full stack trace that we obtain >> while we are updating a Vertex in client/server mode, from a >> single-threaded client and no concurrent use of the DB (v2.1.10). DB engine >> transactions are turned on. >> >> Here is just the final exception trace that we got : >> >> Caused by: >> com.orientechnologies.orient.core.exception.OConcurrentModificationException: >> >> Cannot UPDATE the record #20:0 because the version is not the latest. >> Probably you are updating an old record or it has been modified by another >> user (db=v12 your=v10) >> at >> com.orientechnologies.orient.core.conflict.OVersionRecordConflictStrategy.checkVersions(OVersionRecordConflictStrategy.java:55) >> at >> com.orientechnologies.orient.core.conflict.OVersionRecordConflictStrategy.onUpdate(OVersionRecordConflictStrategy.java:42) >> at >> com.orientechnologies.orient.core.storage.impl.local.OAbstractPaginatedStorage.checkAndIncrementVersion(OAbstractPaginatedStorage.java:2394) >> ... >> >> On our side, we guess that it might be a "reload" problem in the client >> cache. However, we expected not to have such an exception in our very >> simple use case. >> >> -- --- 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.
