There is a fundamental problem with difference-based synchronization: the meaning (intention) of operations is not preserved.<p>So while this method may work well in many cases in practice, there are classes of problems where the approach does not work. These problems may involve, for example, more complicated invariants that must hold between different parts of the data.