Hi,
yes we have an OpenEngSBModelId defined.
I was occupied with the engsbupdate to version 23 and now that I am finished I have tried it again. Still getting lost updates. Here a simplified sample of what I am doing:
Edb initial state, 1 signal:
[EDB] oid=bla,edbVersion=1,modelField=value1
Now 2 different threads query the edb for the signal above. Each thread changes 'modelField'.
Now thread1 commits the following:
[THREAD_1_COMMIT] oid=bla,edbVersion=1,modelField=value2
resulting in the following edb state:
[EDB] oid=bla,edbVersion=2,modelField=value2
now thread2 commits its changes:
[THREAD_2_COMMIT] oid=bla,edbVersion=1,modelField=value3
resulting in the following edb state:
[EDB] oid=bla,edbVersion=3,modelField=value3
Now I also had a look at the Itests in EDBIT and I think the test testEKBConflictCommitEvent_shouldResolveInConflict() should test this, however I could not execute this test. When I am trying to run the itests I am getting the following error in karaf:
17:05:54,361 | ERROR | rint Extender: 1 | DomainProviderManager | s.internal.DomainProviderManager 121 | 221 - org.openengsb.framework.services - 3.0.0.cdlflex-23 | Bundle org.openengsb.domain.OOSourceCode [51] has an invalid Domain interface. It must be derived from org.openengsb.core.api.Domain
17:05:54,380 | ERROR | rint Extender: 1 | DomainProviderManager | s.internal.DomainProviderManager 121 | 221 - org.openengsb.framework.services - 3.0.0.cdlflex-23 | Bundle org.openengsb.domain.SQLCode [67] has an invalid Domain interface. It must be derived from org.openengsb.core.api.Domain
Looking at the code leads me to AbstractEDBService and there is a boolean called 'revisionCheckEnabled' and this is also set to true. Any other idea why it might not work? How can I get the itests to run?
br