Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Single user syncing - Lesson completion is not restored after second setup of the same learner account #8439

Closed
pcenov opened this issue Sep 16, 2021 · 6 comments · Fixed by #8449

Comments

@pcenov
Copy link
Member

pcenov commented Sep 16, 2021

Observed behavior

I have setup a learner-only device and have completed a lesson assigned to the learner user which is then synced correctly to the server. After that I've deleted the android app storage and cache and repeated the setup for the same user expecting the lesson progress to be restored while in reality it does not get restored and the learner has to start over.

Expected behavior

Any synced user data should be restored.

Steps to reproduce the issue

  1. Install this Windows build and this Android build
  2. Setup the Windows app as a server and setup a learner device on Android.
  3. As a learner complete an assigned lesson.
  4. As an admin go to Coach>Reports>Lessons and verify that the lesson progress is synced correctly.
  5. Delete the cache and storage of the android app and setup the same learner user again. Observe that there is no indication for the progress made so far.

Additional information

Admin:
2021-09-16_12-39-50

Learner with completed lesson:
2021-09-16_12-38-33

Restored learner device without any indication of the progress made:
2021-09-16_12-49-17

Windows Logs

logs.zip

Android and Ubuntu Logs and DB files

https://drive.google.com/file/d/1RAZG77NHuX92puj-KxA-GtkSpx3JxjyZ/view?usp=sharing

Usage Details

  • OS: Windows 10, Android 11
  • Browser: Chrome
@pcenov
Copy link
Member Author

pcenov commented Sep 16, 2021

Update: After revisiting the same case an hour later it appears to be functioning correctly and the lesson progress is displayed correctly. @rtibbles is there a time interval for fully restoring the progress made on the learner's device?

@pcenov
Copy link
Member Author

pcenov commented Sep 16, 2021

Just mentioning that I currently have reproduced the initially reported issue and the learner user's lesson progress is not synced correctly after several hours during which I even changed that user's password while the user was signed out and this change was synced correctly. So no idea what's going on here.

@jamalex
Copy link
Member

jamalex commented Sep 16, 2021

@pcenov Thanks -- would it be possible to share the database file (db.sqlite3) from both sides of the sync, to help with diagnosing?

@pcenov
Copy link
Member Author

pcenov commented Sep 16, 2021

Sure, @jamalex - I've now added a link to the Ubuntu and Android logs and DB files in the description.

@jamalex
Copy link
Member

jamalex commented Sep 18, 2021

This issue has uncovered a really important edge case in how Morango handles "filter specific instance counters" for cases (like single-user syncing) with multiple filters being applied at once. @pcenov It's fantastic that you discovered this before we rolled out 0.15 any more widely!

I have a fix in progress that I think should address this, and will hopefully be able to push it (to Morango, at least) by tomorrow.

@indirectlylit
Copy link
Contributor

@pcenov It's fantastic that you discovered this before we rolled out 0.15 any more widely!

Agreed and thank you @jamalex for the rapid response. Between our QA and trial by fire with S2S, syncing is getting an excellent workout. Well done.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants