Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 12.0.1 » MobiLink - Server Administration » MobiLink server technology » Synchronization techniques » Conflict handling


Conflict detection

When a MobiLink client sends an updated row to the MobiLink server, it includes not only the new updated values (the post-image), but also a copy of the old row values (the pre-image) obtained either in the last download or from the row values existing before the first upload of this row. When the pre-image does not match the current values in the consolidated database, a conflict is detected.

There are several scripts provided to detect conflicts. The MobiLink server detects conflicts only if one of the following scripts is applied:

  • An upload_fetch or upload_fetch_column_conflict script. When you use upload_fetch, conflicting updates are flagged as a conflict. When you use upload_fetch_column_conflict, only conflicts on updates to the same column are flagged.

  • An upload_new_row_insert or upload_old_row_insert script.

  • An upload_update script that includes all non-primary key columns in the WHERE clause (deprecated).

You can set up arbitrary conflict detection and resolution using a stored procedure for upload_update. Conflict detection and resolution is completely controlled by the script so MobiLink does not trigger a conflict.

Conflict detection with upload_fetch or upload_fetch_column_conflict scripts
Conflict detection with upload_new_row_insert or upload_old_row_insert scripts
Conflict detection with upload_update scripts