Am Montag, 17. Juni 2013, 12:39:46 schrieb Friedrich W. H. Kossebau: [...]
Now B tries to sync, but sees that there are conflicting ops, which it first has to resolve locally, by transforming its local unsynced op and the new on the server against each other, so the server op is based on the state of B and the unsynced op is based on the (virtual) state of the server: T(<insertText pos="1" text="b" memberId="B"/>, <insertText pos="0" text="a" memberId="A"/> ) -> (<insertText pos="1" text="b" memberId="B"/>, <insertText pos="0" text="a" memberId="A"/> ) given the tiebreaking rules above.
Bah, c&p error. In case you read this part and wondered, this should have been: T(<insertText pos="0" text="b" memberId="B"/>, <insertText pos="0" text="a" memberId="A"/> ) -> (<insertText pos="1" text="b" memberId="B"/>, <insertText pos="0" text="a" memberId="A"/> ) Cheers Friedrich -- Friedrich W. H. Kossebau // KO GmbH http://kogmbh.com/legal/