-
Notifications
You must be signed in to change notification settings - Fork 223
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
App Crashes after Opening The Economist Podcasts Page #138
Comments
From geekygecko Here is some notes on the issue. Not anything to let the user know yet. This issue seems to be related to reading too much from the database at once. Here is a similar Google Issue. seems like the list is really big where it is not fitting into a single CursorWindow. You can annotate the live data returning method with @transaction so that it will block the database while reading. This is also the 4th most common crash in Firebase. From a crash in Firebase it seems to be coming from the following method in the EpisodeDao.
This is only used on the podcast page to monitor all the episodes. PodcastViewModel Fix ideas |
From rustyshelf "episode_count":2500 |
From geekygecko: https://issuetracker.google.com/issues/65045157 you can also annotate the query with @transaction if you really want to fetch such a big data set. There is another option to try @transaction but paging sounds like a better option for older devices. |
From rustyshelf If it happens every morning, then it's likely the podcast page is getting updated while someone is scrolling, causing the subsequent cursor fetch to be at the wrong index? I guess Room doesn't handle that? Is that what this Google Engineer is saying?
So using @transaction bypasses that 2MB limit and runs the query every time you scroll or something? Might be interesting to test that first, since most of the phones this crashes on are fairly new. 84% Google Devices, 81% on Android 12. |
From geekygecko It looks like @transaction doesn't let anything else run until the all the queries have finished which might have other effects as the database is now locked. Paging does seem like the right solution for this if it's possible. |
From rustyshelf Will paging solve the scrolling while data is changing issue? From what I can tell every one of those cursor numbers is in the high hundreds, suggesting what has happened is that there aren't actually that many rows anymore. For example: You open the page, there are 630 episodes
|
From geekygecko
Yes it does seem more like the steps you have indicated. I would think their paging library would handle being at one page for awhile and then the data has changed either before or after it. It is their recommended library for handling large local dataset. But guess we wouldn't know until we tried it. |
From thabotswana: Another report in 5221363-zen
|
Another report on 5384164-zd
|
Another report in https://woothemes.zendesk.com/agent/tickets/5563996
|
This should be fixed by #1589 We should still migrate fetching our data in a paging manner but this is a bigger task and probably a project on its own. |
Release Notes: https://github.com/Automattic/ a8c-ci-toolkit-buildkite-plugin/releases/tag/3.9.1 FYI: This change points to that version of the 'A8C CI Toolkit' where both, the #135 and #138 PRs, are merged into 'trunk', and, the new dependency cache mechanism, per project, without 'GRADLE_RO_DEP_CACHE', is fully operational. A8C CI Toolkit #135 PR: [Dependency Cache] Dependency Cache on CI per Project [without GRADLE_RO_DEP_CACHE] #135 - Automattic/a8c-ci-toolkit-buildkite-plugin#135 A8C CI Toolkit #138 PR: [Dependency Cache] Fix Dependency Cache #138 - Automattic/a8c-ci-toolkit-buildkite-plugin#138
From Igotdes:
User in #5187327-zen reports that their app crashes daily when they open the page for The Economist Podcasts (https://nodeweb.pocketcasts.com/admin/podcasts/558366).
App version : 7.19.2 (7566)
Phone: Google - Pixel 4a (5G) - Pixel 4a (5G) - bramble
Kernel: 4.19.220-gadc60de00e3a-ab8172795 - abfarm-01373
Android version: 12 SDK 32
They have tried:
deleting all episodes from The Economist Podcasts
unsubscribing from The Economist Podcasts, restarting the app, and resubscribing
App logs show:
The text was updated successfully, but these errors were encountered: