Signal-android: Signal Android uses way too much internal storage

Created on 14 Sep 2019  路  15Comments  路  Source: signalapp/Signal-Android

  • [x] I have searched open and closed issues for duplicates
  • [x] I am submitting a bug report for existing functionality that does not work as intended
  • [x] I have read https://github.com/signalapp/Signal-Android/wiki/Submitting-useful-bug-reports
  • [x] This isn't a feature request or a discussion topic
    _Since this issue makes signal unusable on certain devices, it is not a feature request_
    The feature request here that was requested to be opened by the signal team has languished without any clear direction from the devs.

    See the discussion here and here: #7881. Several issues closed without resolution linked inside.

Bug description

Signal uses way too much internal storage

Steps to reproduce

  • Install signal on a storage-limited device
  • Use it actively as your SMS app
  • Watch the android storage warning notifications start to come in

Actual result: Signal puts everything into internal storage
Expected result: Signal should allow the user to select the SD card for message and media storage

Screenshots

N/A

Device info


Device: LG G7 One
Android version: 9
Signal version: 4.47.5

All 15 comments

This looks like a duplicate of https://github.com/signalapp/Signal-Android/issues/7881. Everything else is basically the same, except the "expected result" section. In both cases, however, the "expected result" section describes some additional functionality that does not yet exist in the app.

Edit: The implementation of this missing functionality is being tracked here:

https://community.signalusers.org/t/support-external-sd-card-storage-for-local-message-store/3216

It may be a duplicate but the original issue does not seem to be solved either. I have signal using 1 GiB of data, despite having only 2 short chats (and no access to SMS).

LineageOS 7.1.2 (armv7)
Signal 4.49.14

OMFG

/data/media/0/Android/data/org.thoughtcrime.securesms/files # du -sh *
46.7M   signal-update-1.apk
46.9M   signal-update-10.apk
46.9M   signal-update-12.apk
46.9M   signal-update-15.apk
46.9M   signal-update-16.apk
46.9M   signal-update-18.apk
46.9M   signal-update-19.apk
46.7M   signal-update-2.apk
46.9M   signal-update-20.apk
46.9M   signal-update-22.apk
46.9M   signal-update-27.apk
46.7M   signal-update-3.apk
46.7M   signal-update-4.apk
46.7M   signal-update-5.apk
46.7M   signal-update-6.apk
46.9M   signal-update-7.apk
46.9M   signal-update-8.apk
46.9M   signal-update-9.apk
46.7M   signal-update.apk

@se17p Ah so do you use the web release? Looks like we aren't properly cleaning up the APK's after an auto-update.

@greyson-signal Yes, I do.

@se17p I've put in a fix that will clean up these files in 4.51.

@hdpinto Do you also use the website APK?

Following up on this as today I received for the first time a "low storage warning" notification on my phone, which led me to discover that Signal was using about 1 GB in user data.

I have been using the app for about three months, with only two conversations going over 10 messages but with a lot a attachments in them (mostly pictures and a few voice recordings). No group chats here.

Signal "storage/memory" menu indicates 390 MB used. Since I have a rooted phone, I went to check /data/data/org.thoughtcrime.securesms/ to discover that the app_parts folder contains 520 elements, for a whooping total of 920 MB. All filenames are of the type "part/transfer[long number string].mms".

This was already mentioned in bug #5515 but it got closed during the spring cleaning. However I think this issue is important enough to push it here.

Such storage usage is not only a problem for "low end" phones: it seems it is rather a general issue of Signal not being sufficiently storage efficient. How can 390 MB of media files turn into 920 MB of hidden data files? Is the usage of the app_parts folder documented anywhere, so that (rooted, power) users can know whether it is safe to discard?

I just went on and deleted everything in this folder: now my storage use is down to 72 MB, but I have lost all the media context of my conversations and have ugly placeholders instead. It doesn't feel right to have to do that to get reasonable storage usage within an app. Of course I had backed it up before with Titanium Backup, but the backup itself is over 900 MB.

Question: do Signal backups contain media files? I think so, but in that case how is it possible that line are only about 400 MB big? Were I to uninstall and reinstall Signal using the backup, would my media files still be there but the app_parts storage issue gone?

Anyway, thank you for making this secure and trustworthy messaging app available free of charge, I still appreciate its worth despite this caveat.

@neitsab
transfer* files are temporary files that are used when downloading media. Looks like there's an issue where some of these aren't being deleted. This will be fixed in 4.57.

My Signal uses 800MB data according to the system, but Signal itself only says 200MB. So just updated to 4.57.1, but no change... :-(

Running on Sony XZ1, android 9.

Edit: Since my phone is not rooted, I can't see what files occupy the Signal data folder. Would be nice if there was a way to list this folder from within Signal. Like under Settings/Advanced/ Debug or similar. Then this could help identify the problematic files, and finally fix this.

Workaround to shrink Signal storage back to its due size without losing any data but parameters:

  • make a backup from within the app
  • delete app storage from Android app info
  • open the app and input backup passphrase when prompted; let it restore
  • (the app crashed/closed at the end of restoration for me, so if that happens to you open up the app once more)
  • confirm number, finish setup and voil脿, all your chats and media are there and all bloat is gone :+1:

My install went from 1.3 GB down to 659 MB (which is the actual size of all my attachments/media) without losing any data. Now I'm happy again :relieved:

Thank you @neitsab for this tip, i would like to run it.
But when the internal storage is too low, you can't backup anymore and you're just stuck. (Unless starting to delete some data with the media explorer)

But when the internal storage is too low, you can't backup anymore and you're just stuck. (Unless starting to delete some data with the media explorer)

That is indeed a caveat of this workaround, if you have no previous backup and not enough space to make one. But in that case you can move a few items to an external SD card or computer (pictures, videos... My trick is to sort folders by size and them move that out of the way for the backup to proceed). Deleting the hidden DCIM/.thumbnails folder that can become gigantic over time is also a good trick.

Can you please include an option in Settings to save a backup to external SD? Thank you.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

nxfifteen picture nxfifteen  路  3Comments

kwlg picture kwlg  路  3Comments

5boro picture 5boro  路  3Comments

McLoo picture McLoo  路  3Comments

vvug picture vvug  路  3Comments