You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Currently, Move operations differ from Insert or Delete operations in that they struggle to establish a commutative property solely through operations. The following failure cases exemplify the issue:
In Array, when multiple Move operations are executed simultaneously, if the reference node (Previous) moves its value, the Array's structure is maintained, but the values diverge: here.
In Tree, if concurrent Move operations occur and an Ancestor nodes move its value, the Tree's structure is compromised: here.
To resolve these issues, the current approach by OPSet(Specifying a Tree with Atomic Moves, Automerge) and REG(Movable Tree, Loro) involves sorting the operations before re-execution to achieve convergence.
The convergence mechanism consists of two main components:
A. To re-execute operations across all replicas to determine the final state.
B. Allow for the cancellation of certain operations based on specific rules(e.g., cycle in Tree) during re-execution.
Unlike the two systems(OPSet, REG), Yorkie system has all operations in the central server, but the replica only has the state, so we need to think about how to introduce it.
Why:
The text was updated successfully, but these errors were encountered:
Description:
Currently,
Move
operations differ from Insert or Delete operations in that they struggle to establish a commutative property solely through operations. The following failure cases exemplify the issue:In Array, when multiple
Move
operations are executed simultaneously, if the reference node (Previous) moves its value, the Array's structure is maintained, but the values diverge: here.In Tree, if concurrent Move operations occur and an
Ancestor
nodes move its value, the Tree's structure is compromised: here.To resolve these issues, the current approach by OPSet(Specifying a Tree with Atomic Moves, Automerge) and REG(Movable Tree, Loro) involves sorting the operations before re-execution to achieve convergence.
The convergence mechanism consists of two main components:
A. To
re-execute operations across all replicas
to determine the final state.B. Allow for
the cancellation of certain operations based on specific rules
(e.g., cycle in Tree) during re-execution.Unlike the two systems(OPSet, REG), Yorkie system has all operations in the central server, but the replica only has the state, so we need to think about how to introduce it.
Why:
The text was updated successfully, but these errors were encountered: