Asynchronous Operation Replay

When an application calls SubmitPending on an MBO on which a create, update, or delete operation is performed, an operation replay record is created on the device local database.

When synchronize is called, the operation replay records are uploaded to the server. The method returns without waiting for the backend to replay those records. The synchronize method downloads all the latest data changes and the results of the previously uploaded operation replay records that the backend has finished replaying. If you choose to disable asynchronous operation replay, each synchronize call will wait for the backend to finish replaying all the current uploaded operation replay records.

By default, synchronization will not wait for the operations to be replayed on the backend. When the replay is finished, the onSynchronize callback method will be called with this status code in the SynchronizeContext:

SynchronizationStatus.ASYNC_REPLAY_COMPLETED

The application can set the following property in the synchronization profile to use the previous Synchronous Operation Replay behavior.

SMP101DB.GetSynchronizationProfile().SetAsyncReplay(false);