-
Notifications
You must be signed in to change notification settings - Fork 7
Description
Somehow, on a random chromebook, I was able to launch an app starting from nothing, initialize from server, but fail to migrate. Since the server data was older (version 2) than the codebase (version 3), this left version 3 unapplied. But since the app issued operations with version 3 timestamps, other peers assumed incoming data was pre migrated and did not apply migrations, either.
Pruning made the app still usable, but due to #412 , the pruned data was POJOs instead of entities (it was a new object field with a default value), so the app logic broke. #412 will fix this contingency case, but not the root cause.
Unfortunately I didn't get a good look at the logs for the device I was using when this happened, but I remember seeing "no migration found for version 0" which could be a hint. It's worth testing the case when migration throws an error, to make sure the app does not launch.