Hello,
I have noticed strange behaviour, It occurs every time. I use DefaultCacheImpl
and implicit write locking. I do something like this:
1. tx.begin (odmg trans)
retrieve object
remove the object from cache
modify the object (insert into it's list new sub objects)
writelock the object
2. tx.commit
After that everything goes well to the DB including newly added subobjects,
but the modification is not seen in some cases so after commit I added:
3. remove the object and its subobjects from cache.
And now new subobjects are not stored in DB but these that was modified are
stored with modifications.
When I remove from cache only subobjects and not the main object in point 3,
then everything is OK. Also other way to make it work is to explicitly write
lock all sub objects.
This is strange because before in point 2 I invoke commit() which should store
changes in DB, then in my understanding anything I put after point 2 should
not affect my transaction.
Regards.
--
----------------------------------
Łukasz Korzybski, [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]