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.
- 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.
- Resolve this issue by asking the device user to:
- From the application, initiate a database reset.
Note: Developers can include the reset functionality by calling
DB.DeleteDatabase in the application code.
- Restart the application.
- Perform an initial sync.
- Re-create any pending changes and resynchronize them to
Unwired Server.