User:Dash1291/Thoughts

This is my brainstorming/thoughts page.

Operational Transformation
This is the concurrency control model that should be used to consolidate concurrent operations emerging from different editors/clients and avoid conflicts. The transformation should work in the following way -
 * 1) The client emits a new transaction after attaching a parent hash, which is uniquely determined according to the state of the client's linear model.
 * 2) The server keeps the history of all transactions it receives.
 * 3) When a new transaction arrives at the server, it looks into the server transactions history for the corresponding transaction having the same parent hash. This server transaction is composed with all its succeeding transactions which lead to the most updated linear model state.
 * 4) The transaction arrived from the client is now xformed against the composed transactions as mentioned in above step.
 * 5) The transformed client transaction is broadcasted and pushed into the server's transaction history.