When a sync is in progress, the syncsession can be prematurely closed if zeroconf indicates the instance has left the network #11485
Labels
P0 - critical
Priority: Release blocker or regression
Milestone
Observed behavior
The Android App runs its syncs in an independent task runner managed by the Android Work Manager library - this means it is possible for the sync to start running while the app is open, but then for the app to be closed.
If this is the case then zeroconf will shutdown during the sync, causing the server to think the instance is no longer syncing and try to cleanup the active sync session. This will cause errors for the syncing client, as it will receive a 404 for its active sync session.
Errors and logs
From the app side:
From the server side:
Full logs available here: learningequality/kolibri-installer-android#171 (comment)
Expected behavior
The server should not clean up while syncs are active! It was suggested by @bjester that we could perhaps reduce the aggressiveness of this behaviour, and instead rely on #11101 to keep the sync sessions in check.
User-facing consequences
Breakage of syncing!
Steps to reproduce
Setup an Android device as an LOD.
Exit the app while syncing is in progress.
The text was updated successfully, but these errors were encountered: