MobiLink Synchronization User's Guide
Synchronization Techniques
Conflicts arise during the upload of rows to the consolidated database. If two users modify the same row, a conflict is detected when the second of the rows arrives at the MobiLink synchronization server. When conflicts can occur, you should define a process to compute the correct values, or at least to log the conflict.
Conflicts are detected only during updates of a row. If an attempt to insert a row finds that the row has already been inserted, an error is generated. If an attempt to delete a row finds that the row has already been deleted, the attempt to delete is ignored. An attempt to update a row that has been deleted is a conflict.
No conflicts arise in the remote database as a result of synchronization. If a downloaded row contains a new primary key, the values are inserted into a new row. If the primary key matches that of a pre-existing row, the other values in the row are updated.
Conflicts are not the same as errors. Conflict handling can be an integral part of a well-designed application, allowing concurrency, even in the absence of locking.
Caution Don't update primary keys in a MobiLink environment. |
How conflicts are detected
Forced conflict resolution
Storing the user name