-
Notifications
You must be signed in to change notification settings - Fork 1.3k
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
Crash: TransactionTooLargeException #5456
Comments
Apparently it only happens on Android 7.x devices |
I think we are experiencing this problem with the NotificationsDetailActivity. Timing looks to match this theory (number of crashes started to increase with the release of 6.9 that includes the notification detail paging feature). |
If I understand that issue correctly, it's due to the saved state's size, which seems to be small for I have checked all the Aside from that, I haven't noticed any particular class as the culprit, so not really sure what we should do about this particular crash. |
@oguzkocer I was pointing to "comment 78" which is now "comment 77" (Google issue tracker changed recently), I updated the link above. And I'm pretty sure it's related to our use of |
Oh, sorry, I think I missed that comment somehow. I am looking into it! |
This unfortuantely reappeared in |
Another possible source: passing the PostModel in from the post list to the post editor. We should only pass the id (local) and reload it in the editor. PostModel objects can be > 1Mb. |
It looks like we still have this issue, reopening.. |
Looking at some crash sessions, it seems the crash happens during edition in the hybrid editor. Last log line before the crash looks like:
I wonder if the problem comes from the underlying Editor Webview |
I tried to repro, but I hit another limit wordpress-mobile/WordPress-FluxC-Android#517 |
I was able to open a 1Mb Post in the hybrid editor with Android 7.1.1, editing experience was very unresponsive (I was barely able to add characters), but nothing crashed. Also tried with Aztec (much better experience but still unresponsive) |
I did similar tests and didn't get anywhere with them. The thing with Also something to consider while testing is that this crash happens when the device is under load, so it's not actually app specific. Yes, it is possible that just passing a very large object in bundle might cause it, but it's very unlikely. It's probably more likely to happen when we pass large objects AND the device is under load. |
@maxme We have been struggling with this crash for a long time. How about we do something a bit radical and for the alpha builds add a log to |
I see 2 other references to serialized post (or page) that we should remove before trying other techniques: |
Hopefully this is fixed in #6399, so closing it for now. If we still have the crash, we'll re-open. |
Re-opening this as the crash is still happening after our last fix attempt. |
I think we should try what @oguzkocer suggested here before that is, adding logs, so we can gain a little more insight as to where this might be happening. I don't think performance would be hurt that much, and in any case we're going to remove that logging once we pinpoint what's happening. In the best case it's a couple of releases we do this for (1 cycle to get logs in and gather info, another cycle with a solution if we are able to repro and keep monitoring). Thoughts @maxme ? |
FYI, there's at least one Fabric report with this happening on a Nexus 5X, running Android 7.1.1 |
Not sure if this will be useful, but I did a bit of testing with this issue, and managed to consistently reproduce it in Visual Editor with 1mb and 460kb posts (250kb was ok). Crash happens when I also tried with a bunch of 60kb comments that make in total over 1mb, but we don't write them to bundle anywhere so everything was ok. |
That's awesome @khaykov ! Can you please write up the steps to reproduce? For example, that 1MB and 460KB, are those just text or does it include images and such? Thanks! |
Good call, I forgot we saved the title and content here, we made sure to remove the full |
I removed myself as assignee at least for now, which I should have done long time ago. I am just coming off of a long afk due to my move to Canada. I am probably not going to able to take a look at this again at least for a week again, so please feel free to take a stab at it. Hopefully last little bit that needs to be fixed is what @khaykov mentioned (thanks for that btw!). |
Here's a thorough discussion of the issue : https://stackoverflow.com/questions/39098590/android-os-transactiontoolargeexception-on-nougat/44738411#44738411 . I created a little library to get around this : https://github.com/livefront/bridge . Basically, there's a limit to the amount of data you can save via |
The crash logs doesn't say much about where this crash occurs, but I did look into the
TransactionTooLargeException
a bit and it looks like it generally happens when huge amount of data is getting exchanged between a service and an application. So, I'd probably look into media related stuff first, since the amount of data would be the biggest in those operations.The text was updated successfully, but these errors were encountered: