Open Hutchinman opened 1 year ago
I just had the exact same problem with version 6.34.2 on a Pixel 6 Pro. In my case, my girlfriend sent me a bunch of TikTok links followed by a sticker. Opening Signal to the main screen would cause it to automatically close in about 2 seconds. However, if I opened it directly to any conversation besides her (via the widget or share interface), it would work fine (as long as I didn't back out to the main screen.)
Clearing the cache and rebooting did nothing. I texted her and asked her to delete the sticker - after she did, Signal worked fine again.
Hope that helps. Good luck!
Unfortunately, I don't know about any stickers in any messages. I can't see my messages as I can't keep the app open long enough to get to them. I am stuck on the log in 'passphrase' screen. Thanks for the intormation though.
If stickers are the issue, then maybe the devs can fix it.
@Hutchinman Do you feel comfortable trying to capture normal ADB logs for this?
https://developer.android.com/tools/adb
Unfortunately, without more information, it's hard to diagnose. Did 6.33.2 work fine? That'd help us track down the offending change.
I'll take a look and see if I can get it working. Is this guide in the top comment of this Reddit thread still accurate for getting the logs using ADB?
https://www.reddit.com/r/signal/comments/quwx29/is_there_a_way_to_get_debug_logs_if_app_wont_open/
For 6.33.2, it crashed as well. I waited for a new version before reporting the bug just to see if that fixed the issue. I didn't 100% know if someone had already reported the crash bug, despite me looking around the issue tracker.
The last version on this phone of mine that I used without it crashing was 5.52.5 back in October 2022. I didn't use the phone for almost a year after that.
Seems like I have the same issue, therefore I will post here instead of creating a new issue. The app crashes every time within seconds after the start no matter what I do.
I don't want to lose my history. Cleared the cache, rebooted, updated the OS, freed some phone storage... changed nothing. Bothered to get the adb logs (c.f. below).
Device: OnePlus 8 Pro Android version: Android 13 (Oxygen 13.1) Signal version: 6.33.3
--------- beginning of crash
09-25 22:10:39.172 E/AndroidRuntime(12926): FATAL EXCEPTION: pool-17-thread-1
09-25 22:10:39.172 E/AndroidRuntime(12926): Process: org.thoughtcrime.securesms, PID: 12926
09-25 22:10:39.172 E/AndroidRuntime(12926): android.database.sqlite.SQLiteException: FullCode: 1 | ErrorCode: 1 | ExtendedErrorCode: 0 | Message: SQL logic error | ExtraMessage: null
09-25 22:10:39.172 E/AndroidRuntime(12926): at net.zetetic.database.sqlcipher.SQLiteConnection.nativeExecuteForChangedRowCount(Native Method)
09-25 22:10:39.172 E/AndroidRuntime(12926): at net.zetetic.database.sqlcipher.SQLiteConnection.executeForChangedRowCount(SQLiteConnection.java:770)
09-25 22:10:39.172 E/AndroidRuntime(12926): at net.zetetic.database.sqlcipher.SQLiteSession.executeForChangedRowCount(SQLiteSession.java:758)
09-25 22:10:39.172 E/AndroidRuntime(12926): at net.zetetic.database.sqlcipher.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:71)
09-25 22:10:39.172 E/AndroidRuntime(12926): at net.zetetic.database.sqlcipher.SQLiteDatabase.delete(SQLiteDatabase.java:1794)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.lambda$delete$14(SQLiteDatabase.java:391)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.$r8$lambda$M2dGB_vmS-aoBgck2zt6F2h6rb4(SQLiteDatabase.java:0)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase$$ExternalSyntheticLambda4.run(R8$$SyntheticClass:0)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.traceSql(SQLiteDatabase.java:112)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.delete(SQLiteDatabase.java:391)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.delete(SQLiteDatabase.java:251)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.signal.core.util.DeleteBuilderPart2.run(SQLiteDatabaseExtensions.kt:317)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.database.MessageTable.deleteMessage(MessageTable.kt:3393)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.database.MessageTable.deleteMessage(MessageTable.kt:3380)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.database.MessageTable.deleteMessage(MessageTable.kt:3371)
09-25 22:10:39.172 E/AndroidRuntime(12926): at org.thoughtcrime.securesms.service.ExpiringMessageManager$ProcessTask.run(ExpiringMessageManager.java:97)
09-25 22:10:39.172 E/AndroidRuntime(12926): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
09-25 22:10:39.172 E/AndroidRuntime(12926): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
09-25 22:10:39.172 E/AndroidRuntime(12926): at java.lang.Thread.run(Thread.java:1012)
09-25 22:10:39.172 E/SignalUncaughtException(12926): android.database.sqlite.SQLiteException: FullCode: 1 | ErrorCode: 1 | ExtendedErrorCode: 0 | Message: SQL logic error | ExtraMessage: null
09-25 22:10:39.172 E/SignalUncaughtException(12926): at net.zetetic.database.sqlcipher.SQLiteConnection.nativeExecuteForChangedRowCount(Native Method)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at net.zetetic.database.sqlcipher.SQLiteConnection.executeForChangedRowCount(SQLiteConnection.java:770)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at net.zetetic.database.sqlcipher.SQLiteSession.executeForChangedRowCount(SQLiteSession.java:758)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at net.zetetic.database.sqlcipher.SQLiteStatement.executeUpdateDelete(SQLiteStatement.java:71)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at net.zetetic.database.sqlcipher.SQLiteDatabase.delete(SQLiteDatabase.java:1794)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.lambda$delete$14(SQLiteDatabase.java:391)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.$r8$lambda$M2dGB_vmS-aoBgck2zt6F2h6rb4(SQLiteDatabase.java:0)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase$$ExternalSyntheticLambda4.run(R8$$SyntheticClass:0)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.traceSql(SQLiteDatabase.java:112)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.delete(SQLiteDatabase.java:391)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.database.SQLiteDatabase.delete(SQLiteDatabase.java:251)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.signal.core.util.DeleteBuilderPart2.run(SQLiteDatabaseExtensions.kt:317)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.database.MessageTable.deleteMessage(MessageTable.kt:3393)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.database.MessageTable.deleteMessage(MessageTable.kt:3380)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.database.MessageTable.deleteMessage(MessageTable.kt:3371)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at org.thoughtcrime.securesms.service.ExpiringMessageManager$ProcessTask.run(ExpiringMessageManager.java:97)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
09-25 22:10:39.172 E/SignalUncaughtException(12926): at java.lang.Thread.run(Thread.java:1012)
Since it is SQLite, files may indeed be the problem.
There are two culprits that come to my mind. First one is the most suspicious: I sent a high resolution PNG from a GoPro (almost 30 MB 5568x4872px). Signals gallery preview was working erratically (no thumbnail was showing for this image). After selecting the image there was still no thumbnail. Sending was successful though and the image showed up in the conversation (maybe after compression it was depictable). Around the same time I also sent a .torrent file.
Neither of the files had extremely long file names nor obscure characters in the file name.
After both actions is was working at least for some time (if I remember correctly I went to sleep after sending the files and crashes started next morning after viewing some messages). So maybe this is misleading.
EDIT: It might be also noteworthy that my signal storage reached almost 20GB after years.
@alex-signal I think I did it using ADB. I attached the crash log below.
Same error in Beta Version 6.34.2 btw.
@chromosapiens your issue is actually different, and I fear, more dire. It seems like you are hitting a general SQLite exception when attempting to delete a message, and I'm at a bit of a loss on what to do about it. I don't think it's attachments related as that wouldn't really do much to the database. I'll ask around.
@Hutchinman your issue is related to a broken migration from trying to update from a much older install. I'll see if we can try to address it or if you don't mind losing data from the 1yr old+ install, you can clear data and start afresh.
@cody-signal thanks for your answer
I got another portential pin point what caused the problem: I noticed that hours after crashing several times multiple new contacts appeared on my signal (a can see the messages like "Andy joined Signal" for a split second before it crashes again). This is due to a google account I recently added to the phone that synced some contacts from another device.
I thought this to be unrelated first because it happened several hours after the first crash. But I now looked up the time when the google app actually synced the account and its a perfect fit time wise, i.e. the contacts sync happened around the time when the crashes started. I saw the contacts appear in signal only later, probably because it only had a second or so for processing each time I opened the crashing app.
Could the updating of contacts be something with SQLite?
Just an idea, thanks for looking into this!
Thanks for the follow up, not likely related but for sure highly correlated.
@cody-signal
The reason I updated the app was to get the data, i.e. my messages, and move it to my current phone. I'll appreciate anything you can do to fix it.
@cody-signal
Hey, I'm just checking in to see if any headway has been made in fixing this. Again, I appreciate all you guys do. Also, just in case it is relevant, it is still crashing on version 6.37.2.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
@cody-signal Sorry to bother again, I hope you are having a lovely holiday season. Has there been any progress on this? I appreciate your efforts!
Thanks for following up @Hutchinman, this sort of fell off my plate. It doesn't seem like an issue many folks are experiencing as far as we can tell, and so it became deprioritized relative to everything else. I bumped it again with the team for any insights.
@cody-signal Thank you so much! I know you guys are super busy, and I am but one of many users, but I appreciate any help you can give.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
@cody-signal Bumping this again. I have seen several commits that reference this bug, but they don't appear to have fixed the issue for me. I have tested Signal on the version 6.47.5, the most up-to-date available at the moment and it is still crashing. Thanks again for your help.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Just updating that this is still happening in 7.5.2.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Updating that this is still occurring in version 7.9.6.
Hey @Hutchinman, we aren't likely to look into this at this point. I've bumped it a few times since you opened it with the team and we just don't know what causes it and the incident rate isn't high enough to bump in priority.
Our backup format is defined in the code and is open source so it's possible to extract the data without using Signal. Some google searching may help point you in a direction if you really wish to recover the data from the backup.
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.
Bug description
Signal is crashing 2-5 seconds after opening the app. Cannot keep app from crashing long enough to get a debug log link.
Steps to reproduce
Actual result: Signal flashes white and sometimes a pop-up window says that Signal has stopped working. In other words, it crashes. Expected result: Signal stays open.
Screenshots
n/a
Device info
Device: Google LG Nexus 5 Android version: Stock 6.0.1, Android security patch 10/5/2016 Signal version: 6.33.3
Link to debug log
Cannot get a debug log before the app crashes.