We just migrated a consolidated database to a new mobilink service.
a lot of users with an old remote database are experiencing synchronization problems. The mobilink log is indicating "upload_inserts" and giving "unique constraint" errors on several tables... So it's trying to insert existing data from a few hours before the migration.
Does anyone with knowledge of the inner workings of mobilink have an idea on how this might be happening?
Our current solution is recreating the remote database and this seems to work, but I would like to know what's going on really..
We probably missed something... Any tips?
asked 04 Sep '14, 08:26
Note : I assumed dbmlsync and not UL, although the concepts are the same regardless of ML client.
Executive Overview of progress tracking in MobiLink :
In your situation I would have expected all the remote databases that existed before the migration to have worked fine, UNLESS the last synchronization before the migration resulted in an upload being sent and successfully applied to the consolidated database, but no download was received by the remote database. In that scenario, the remote will have sent all operations from offset X1 -> X2, these would have been applied at the consolidated, but the remote would only have received a confirmation that operations up to offset X1 had been applied, since no download was received. After the migration, when the remote database synchronized again, it would have realized that it didn't know whether the last upload was applied, since the two offsets would not match. The remote would have asked the consolidated if operations from X1 -> X2 were applied, but since the remote_id had been deleted from the system tables, the ML Server could not say if it had of not. The remote client would assume it was correct, and assumed that the operations from X1 -> X2 had not been applied, since it was never told they were applied. The operations from X1 -> X2 would be sent again, resulting in pkey violation.
Is it possible that ALL the "last" synchs from the remote databases resulted in no download stream arriving at the remote database?