Check out the new USENIX Web site. next up previous
Next: Combining Adaptation-Aware Editing and Up: Progressive Update Propagation Previous: Pessimistic Replication

Optimistic Replication

In an optimistic replication scheme, before propagating modifications to a component, the writer has to determine if his modifications conflict with other modifications previously reflected at the primary replica. If there is a conflict, the client replica has to resolve it by merging (in a type-specific way) the full-fidelity versions of the conflicting modifications. After resolution, the client replica can propagate a full- or partial-fidelity version of the component to the primary replica. If, however, the primary replica has only a partial-fidelity version for a conflicting component (i.e., the concurrent writer has not propagated a full-fidelity version of its modifications), the two versions cannot be merged as this would violate the restriction on editing partially-loaded components. In this case, conflict resolution has to be delayed until the client replica, which propagated the conflicting partial-fidelity version, propagates a full-fidelity version of its modifications. This problem demonstrates the limitations of implementing partial update propagation for optimistic concurrency control in the absence of adaptation-aware editing. The next section describes how to implement this combination.


next up previous
Next: Combining Adaptation-Aware Editing and Up: Progressive Update Propagation Previous: Pessimistic Replication
Eyal de Lara 2003-03-04