Hi
as i'm advancing over my port of gaedo
(https://github.com/Riduidel/gaedo) to support OrientDB specificities,
I'm fighting with a strange bug that appear only on transacted graph.
Let me explain it further.
In my test, I create a vertex and index it immediatly over all of its
properties, in an index named "vertices" and inherited from Blueprints
legacy.
Each indexing is done in the form
index('property name', 'property value', 'vertex').
When doing so, i try to get back that vertex from index but, when using
a transacted graph, it seems to fail, and the vertex is duplicated, or
at least it appears so.
Indeed, when working on single-valuated properties, I do a test on
update operations to make sure the source vertex is linked to only one
destination vertex.
When running with transactionless graph (calling the "getNoTx()"
method), all goes fine.
But, when running with transacted graph, I get lots of messages like
this one :
public com.dooapp.gaedo.test.beans.Message
com.dooapp.gaedo.test.beans.User.about is linked to more than one vertex :
v[#9:8]->com_dooapp_gaedo_test_beans_Post-10
v[#9:13]->com_dooapp_gaedo_test_beans_Post-10
v[#9:13]->com_dooapp_gaedo_test_beans_Post-10
v[#9:20]->com_dooapp_gaedo_test_beans_Post-10
v[#9:20]->com_dooapp_gaedo_test_beans_Post-10
v[#9:27]->com_dooapp_gaedo_test_beans_Post-10
v[#9:27]->com_dooapp_gaedo_test_beans_Post-10
v[#9:27]->com_dooapp_gaedo_test_beans_Post-10
v[#9:27]->com_dooapp_gaedo_test_beans_Post-10
(continuing on 50 lines).
From debugging, I understand many vertices are created in that case.
And I suspect, after a fast debug in OTransactionRealAbstract, that this
may have something to do with the fact that the index is only updated at
the end of the transaction. Am I right ?
Notice that, as my library is supposed to work on OrientDB as well as on
Neo4j, I'm very reluctant to any change in code.
In such conditions, what can I do to fix that ?
--
Nicolas Delsaux
--
---
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.