You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Describe the bug
Issue reported as part of Urgent ticket
In any organisation, where there are media FormElements, as we keep downloading or uploading media content through Avni app, we'll grow the number of media items that have to be checked for expiry. For each of this media items, we check across all entities mediaObservation fields for match, this takes a large amount of time for even relatively small number of synced entities. As Background jobs run on every app start up, the user faces this issue every time he opens app.
For user with N synced entities and M media items, we can potentially end up performing N * M search at every App start-up, ruining User's App Launch experience.
To Reproduce
Steps to reproduce the behavior:
Using any version of Avni APK
Login as any user for goonj
Perform sync
Navigate to Activities list page and randomly download media-items
Restart the app
Observe that app splash screen stays on for longer and longer duration of time as we download more media-items
Expected behavior
The download of more and more media-items shouldnot exponentially increase the app launch time.
Ensure the PruneMedia Job is not run on every app launch, but rather only once a week or even once a month
Ensure Order of Growth for PruneMedia job is better than O(N^2), which is the case now
Smartphone (please complete the following information):
Device: Any
Version 10.1.0 and earlier
Developer Checklist
Developer fixing the bug should fill this checklist.
Does the fix require extensive regression testing?
Are you mentioning the required scenarios that could be affected?
Discussion points:
Show a progress bar with message to let know user what is happening - this need to be made once in
Why cant we delete it once sync is done? ie., once the replacement of observations is done? that is in post Sync - this will save us from the need of traversing all the observations.
Standup discussion inputs
We do not have instances where the job effectively deletes media, as the catchment doesn't change in general then the entities will remain pointing to the media content, rendering the prune job ineffective
We should also think of making this a User triggered operation than Automatic Background job
The text was updated successfully, but these errors were encountered:
Vivek's input for this card was to not optimize this job and remove it permanently, in-line with Joy's input on the lack of need for such a job for Majority of the Users..
Describe the bug
Issue reported as part of Urgent ticket
In any organisation, where there are media FormElements, as we keep downloading or uploading media content through Avni app, we'll grow the number of media items that have to be checked for expiry. For each of this media items, we check across all entities mediaObservation fields for match, this takes a large amount of time for even relatively small number of synced entities. As Background jobs run on every app start up, the user faces this issue every time he opens app.
For user with N synced entities and M media items, we can potentially end up performing N * M search at every App start-up, ruining User's App Launch experience.
To Reproduce
Steps to reproduce the behavior:
Using any version of Avni APK
Expected behavior
The download of more and more media-items shouldnot exponentially increase the app launch time.
Screenshots
Refer ticket, noordeen user recording
Technical inputs
Smartphone (please complete the following information):
Developer Checklist
Developer fixing the bug should fill this checklist.
Discussion points:
Standup discussion inputs
The text was updated successfully, but these errors were encountered: