|
|
|
|
|
Re: [CDO] Passive updates [message #429970 is a reply to message #429969] |
Thu, 07 May 2009 19:49 |
|
Simon McDuff schrieb:
> A session that Passive update is set to false do no received others
> changes until you ask for it.
Someone willing to write a FAQ entry for this topic?
>
>
>
> Anders Forsell wrote:
>> I am not sure I fully understand the concept of passive updates.
>>
>> If a client starts modifying a CDO resource I understand that the
>> objects are loaded on demand as they are needed. If another client
>> modifies the same resource and commits a transaction will the client
>> receive updates to its cached objects?
> [SIMON] Only if passive update on session1 is true.
>
> Are these modifications done on a
>> separate thread and how are conflicting changes handled?
>>
> [SIMON] Separate threads (In the case where passive update = true
>
>> When not using passive updates what happens during a session refresh?
> [SIMON] All objects in the caches are updated
>> (especially when there are modifications that have not been committed
>> yet).
> [SIMON] In this case two things could happen
> 1- The client modified objectA and server didn't it. Nothing special.
> 2- The client modified objectA and the server have another version of
> it. (basically someone else modified and committed that object). In
> this case the state of that object will be turned at CONFLICT. You
> will have a problem to commit now since you cannot commit until you
> rollback or resolve these conflicts.
Additional info:
You can add several CDOConflictResolver instances to the options of the
transaction. These classes are possible:
1. TakeRemoteChangesThenApplyLocalChanges
2. MergeLocalChangesPerFeature
3. Your own implementation
Cheers
/Eike
----
http://thegordian.blogspot.com
Cheers
/Eike
----
http://www.esc-net.de
http://thegordian.blogspot.com
http://twitter.com/eikestepper
|
|
|
Powered by
FUDForum. Page generated in 0.03753 seconds