chore: port changes in 1.14.1#2635
Merged
Merged
Conversation
…er download When downloading trackedentities globally (multiple programs sharing the same org units in a single bundle), an exhausted program was removed by filtering the original captured `bundlePrograms` list instead of the current map value. Each exhaustion overwrote the previous one, so only the last exhausted program was actually removed per iteration. This forced one extra bundle iteration per program and re-issued the same network calls, re-downloading already-persisted TEIs (quadratic in the number of programs). The removal now operates cumulatively on the remaining programs, so each org-unit/program combination is queried only once when it is exhausted. Add a regression test asserting each program is requested exactly once.
… is downloaded Add a safety net so the bundle download loop does not depend solely on the org-unit list being emptied to terminate. Track the number of items downloaded per iteration and stop the loop as soon as a full iteration downloads nothing new.
…r automatic selection The "all options" selection of a visualization dimension was persisted with a fixed "autogenerated" dimensionItem. Since the primary key is (visualization, dimensionItem), two dimensions with automatic selection in the same visualization collided and one was dropped. The placeholder was also read back as a real item, so it was wrongly interpreted as a category option instead of "all options". Now the placeholder is unique per dimension (<dimensionId>.allItems) and the children appender strips it, exposing an empty item list so it is correctly resolved as "all options".
…ms for automatic selection (#2631)
…erve local results In OFFLINE_FIRST mode, when the online call fails (e.g. HTTP 400, timeout), the failure was added to the result list and propagated to the PagingSource as LoadResult.Error. This caused Paging3 to discard the offline results already collected and freeze the UI on the previous result set. Filter out failed online results before merging with the local results, so a failing online query no longer wipes out valid offline data. Local failures coming from transform() (e.g. missing TrackedEntityType) are unaffected, since they originate after this point and still propagate.
…erve local results (#2633)
|
vgarciabnz
approved these changes
Jun 11, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



No description provided.