Synchronizing Data from Device Applications

If the database fails after device users have synchronized since the last successful backup (and both the primary database and mirror logs are lost), synchronization may fail. Incomplete transactions must be resubmitted once the client database is reset.

Unwired Server asks the client to send a new upload that starts at the last known synchronization point. However, because of differing synchronization timestamps, cache and client databases disagree on when the last synchronization took place because progress offsets do not match. This mismatch requires a data purge, and often results in some data loss. Users must re-create data changes need and resubmit them.
  1. Validate this issue by checking these logs after the failed synchronization attempt:
    • In the device client log, look for a Synchronization server failed to commit the upload error.
    • In the Unwired Server, look for messages relating to progress offset disagreements.
      Config16VM2-server.log:2012-03-12 18:17:12.287 WARN Mobilink Thread-170 [com.
      sybase.ml.sup.Logger] [10012] The consolidated and remote databases disagree on when
      the last synchronization took place, the progress offsets are 9 in the consolidated
      database and 12 in the remote database. The remote is being asked to send a new
      upload that starts at the last known synchronization point.
  2. Resolve this issue by asking the device user to:
    1. From the application, initiate a database reset.
      Note: Developers can include the reset functionality by calling DB.DeleteDatabase in the application code.
    2. Restart the application.
    3. Perform an initial sync.
    4. Re-create any pending changes and resynchronize them to Unwired Server.
Related tasks
Resubmitting Lost Transactions
Reregistering Applications