-
-
Notifications
You must be signed in to change notification settings - Fork 2.7k
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 extremely slow to "Load messages" on macOS desktop #1990
Comments
We will need your logs to move forward on this issue. Please feel free to reach out to me directly. |
@scottnonnenberg this exact issue just happened for me. Messages 10-40 took ages and the rest were really really slow as well. https://gist.github.com/anonymous/8d05df779b9f3ed7dafd0c80d7f5c41d Some quick info while my teacher is speaking gibberish: |
@Dyras Thanks for that example of slow load times. I notice that there are some unexplained multi-second delays sprinkled through that log. Can you tell me about your data directory? How big is it? Did it seem like your computer was working really hard during that time? (was the fan going? did you see the CPU line in Activity Monitor stay really high?) |
Same problem here on macOS 10.13.3, every other app works like a charm. My MacBook is quiet and cool. Here is a log session after a refresh:
|
Same here on Windows 10 Desktop app. |
Two logs from my Macbook from 2010, the logs are taken right after Signal finished loading. Since it's old, being slow as hell is more or less expected but a friend of mine has a modern laptop with an SSD, and it's slow for her too. My Macbook was using around 90% of the CPU while loading. Don't know about my friend, I'll try to find out next time. My logs: Her log: |
Hi, I have the exact issue on windows (slow loading), except my logs show some errors:
(I removed some Ids in logs) So it takes 400ms per error (by looking at the time in logs), which could explain the slow loading I can send the full logs by mail if you need |
My contact information is in my profile. We could always use more performance-related logs. Thanks! |
Took several minutes to load just a few hundred messages. This happens every time I start Signal. Platform: Windows 10 Pro x64 Build 16299 Logs are here. |
I have the same issue. Additionally, some messages are lost (Windows 10). |
With latest version, no more issue. |
Latest version fixed the issue on Windows as well! |
100 messages used to take 2 minutes to load. It now takes 4 seconds. 40 seconds to start the app if you have 1000 queued messages is fine by me. No complaints! My unibody Macbook is a relic so whatever magic you threw in totally works. Now if only we could hide contacts ;) |
Glad to hear that things have improved, everyone. :0) 1.7.0-beta.3 and 1.7.0 introduced a change to put attachments on disk instead of in the database, which drastically reduces load on the database. The thing that's odd, though, is how quickly you all saw improvement. It moves attachment to disk in the background - do you have it running all the time in the background? Or potentially the effect comes from putting newly-received attachments on disk? |
I almost never open Signal on my Macbook unless I'm in school, which is about once a week. I'd say the newly-received attachments were the culprit. I send a lot of images and videos every day. |
I still have 2+ minute load times on a 2016 15" MacBook Pro - opening Signal Desktop with 500+ new messages (even though they've been read on my phone) takes upwards of 2 minutes. No noticeable CPU load or fan load, it just takes forever. There are sometimes a lot of images in those messages, but not always, and that doesn't seem to make a difference. What logs can I provide for troubleshooting? |
@ideologysec In your situation, I don't think it will get any better until we change how we handle attachments. In your case, we download quite a few megabytes during loading, because we're downloading every image in every message that isn't yet downloaded. In the future we'll download attachments in the background, but for now any message with an attachment will make you wait that much longer on the loading screen. |
@scottnonnenberg-signal How about a desktop setting not to include or open attachments and instead have a text notification about them in the message that you can click on to make them download? This could be per channel or global.. |
To me, that looks like a degradation of user experience. Ideally, I'd like the desktop app to:
|
FWIW, we already do that. What’s missing is to download attachments in the background and showing placeholders in the meantime. |
I was six minutes already, while I'm trying to send a just simple message to a friend of mine in the same room. Loading messages, 220 so far... |
Blocking the main thread + UI is already degrading the user experience; I know that Electron was chosen for cross platform reasons but this isn't helping the perception of Electron apps as slow bloated hogs (not to mention all of the non-native antibehaviors like not supporting text expansion or being forced to drop attachments into the send bar instead of the main window...) I assume that the problem would be mitigated if I left Signal open all the time... but it's an Electron app, and eats RAM! |
@lebed2045 @ideologysec Do you two send a lot of attachments? Like tons of videos? |
no, no attachments at all, occasionally I send and receive links.
…On Mon, Jun 11, 2018, 7:56 AM Dyras, ***@***.***> wrote:
@lebed2045 <https://github.com/lebed2045> @ideologysec
<https://github.com/ideologysec> Do you two send a lot of attachments?
Like tons of videos?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#1990 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AjK3EWsEpicx0MO1Va8HPMKLKGkucU7lks5t7oUPgaJpZM4Rl_vX>
.
|
Same here. Been about 2 minutes and it has only loaded 150 messages. Then about 30 seconds later it loaded all of it. 2:30 is a bit much for loading an app. |
Same thing here on Windows 10. In my case it takes almost 3min for 100 messages. Almost opened a duplicate since issue title is slightly misleading. Should title be changed to reflect that issue is multi-platform? Let me know if there is any logs or similar I can send to help with the issue. @Dyras my entire conversation history has 5 x .gifs, 5 x photos (taken with phone), 2 x short videos (taken with phone). Doesn't seem like a lot |
@jcollum @joaobarcia Please provide debug logs whenever you talk about a bug here on GitHub, unless you know for sure that we won't need a log. A log is our best bet for tracking down the performance issues you're running into. |
@scottnonnenberg-signal , see the full log at https://gist.github.com/joaobarcia/819fc12ad31553b76cf7c93310ae7872 As a reference, the app now opened without issues but when I tried to open around the 14h10 mark I was having the issue. Thanks |
The issue came back one or two updates ago, after going away several updates back. It's not as bad, but still can take up to a minute or two to load. Sorry for the lack of specifics, it's been an annoyance more than anything so haven't been tracking it too closely. Occurs on Windows 10 desktop and laptop, both on version 1709 and after upgrading to 1803. |
@leonardehrenfried Hey there - thanks for checking in and and providing your log. The messages we need to process can be substantially more than the messages you see in the app - for example, if you're in a large group, and you send a message to it, you'll get a delivery receipt message from each member. Your phone will also periodically send its complete set of contact information to your desktop, another invisible message type. |
I upgraded to v1.15.5 and still see no improvements. I still get the Loading messages screen which takes a some time to complete. To make things worse, Signal Desktop seems to be requiring a lot of resources during initial startup. It just seems to be unresponsive for a few seconds and it went to an extent that the OS considered the application unresponsive and asked me whether to kill it or not. I use Signal for Android's beta version (by signing up for the beta programme) on a Samsung Galaxy J1 Ace (Android 5.1.1) if that's worth noting. |
What is the major difference between this Electron app and the Chrome extension app that Signal previously used as a desktop client? Because the latter always opened instantly (and still does). Were they designed differently? |
@Mushoz The chrome app was always running in the background, whenever Chrome was running. Thus, it was always up to date, always downloading messages. That's the primary difference. @sivaraam How long does that Loading screen take for you in clock time? And how high does the number of messages processed get? |
@scottnonnenberg Adding an option to start on boot could slightly mitigate that problem, right? Now the problem is that I want to message someone, I open Signal and I'm hit with the loading screen that ruins my experience. Wouldn't it be possible to let people write new messages without waiting for the old ones first? |
@butla I would encourage you to read up-thread and in other performance-related issues in this repo to see the discussion about potential performance mitigations. There's a specific issue focused on getting rid of the loading screen. |
The "Loading .." screen that comes before "Loading messages .." screen took ~30s. The "Loading messages .." screen took ~1m 30s to complete. I suspect the timing is a bit high due to the fact that the network might have been a little sluggish. I feel that as I use a Wireless network and the speed isn't consistent, of course. Further the "Loading messages .." numbers increased slowly which added to my suspicion. fast.com reported a speed of 2.6Mbps around that time.
For a very low volume week (by which I mean I didn't send a lot of messages during the week), the number went upto 30. |
Signal v1.15.0-beta.5 on Linux (with Signal Beta 4.25.10 running on Android 8.1) starts much faster now, 15 seconds instead of 50, yay! Much joy, thank you for fixing this! |
@ckujau Beta is now at v1.16.1-beta.1 - it has further performance enhancements. |
Yeah, I've seen that but that version is segfaulting here...and may be material for another report :) |
@ckujau Yep that's a different bug. And if you installed it any other way than apt, you'll have to contact the person who maintains that package. |
I'm on Windows 10 with Signal Desktop v1.17.3 and loading times for the app are still far beyond acceptable. I use the app once every 2-3 days or so and everytime I start it up it takes more than half a minute, sometimes more than 3 minutes to load the messages. On the previous Chrome App, this was never and issue. I'm not sure what changed on the migration to Electron, but even though it is a known bloat-inducing framework, the performance drop could not have been that significant. There must be some remaining problems with the implementation. |
@Sethur the chrome app would always run in the background whenever you have Chrome open. So even if you only use signal once every 3 days, as long as you used Chrome in between it would have time to keep up to date, hence the better user experience when finally opening the app. The standalone Electron app doesn't have this advantage. However, even though the difference in experience is easily explained, I do have to agree that the current synchronization speed is still unacceptable if we ever want the masses to start using Signal. What is the current bottleneck anyway? Even on my 500/500 Mbit connection, 8 core/16 thread Ryzen processor, 16GB RAM and NVME SSD, I am only syncing around 10-20 messages a second. That's insanely slow for how small these messages are. Shouldn't we easily be seeing thousands of messages per second with current technology? |
@Mushoz if you're really interested in the performance, I encourage you to watch the log (using the dev tools) during a big download some time. Most of the biggest delays are attachment downloads. At some point Desktop will download attachments out-of-band, which will help. But contact/group syncs will always need to be downloaded while processing the message. |
Is there any reason why all attachments must be downloaded on app launch? Sounds terribly inefficient. What if one day you transferred a zip with 500mbs of photos to a friend over signal? Every time in the future you want to send a two word message to any of your contacts you have to download 500mbs? Why not download upon request? |
@Mushoz : You are, of course, right regarding the Chrome app running in the background all the time and thus circumventing the synchronization issues, I wasn't thinking about that. @joaobarcia @scottnonnenberg : I just started Signal Desktop again after only one day of inactivity. None of my groups posted any images, besides standard emojis (not sure if they are send as unicode or images). There were altogether maybe 15 messages that needed synchronizing. Startup nevertheless took 18.3 seconds on a dual Xeon board with 32 GB and 20 cores (40 with hyperthreading) with a 1 Gbit/s (100 MB/s) internet connection. So I'd wager to say that attachment downloads are not the only problem with the current implementation. Is it generally necessary to fully download attachments in order to decrypt the following group/contact messages? If this is not the case, I would suggest prioritizing the implementation of out-of-band attachment downloads (preferably even on-demand if the user choses so) right away. Many users will not tolerate Blender-like startup times for a messenger app, end-to-end encrypted or not. This is especially true for people that were using something like XMPP before. It just feels like a big step backwards. |
@Sethur: I totally agree with your point. Can you post your debug log? (I'm not a Signal developer but @scottnonnenberg is probably tired of asking the same thing over and over.) |
It was slow loading with 20 messages, now with some hundreds it is a nightmare. It seems there are many unitary requests each being around or over 100ms. Running on Fiber in Europe, my ping to 1.0.0.1 and 8.8.8.8 is 5ms. Using https://www.cloudping.info/ I see values between 26 and 346ms. Might eventually dig into code while waiting for data loading... Extract of the logs
|
I have just had another case of just one day of inactivity. When I came back, over 400 messages where sychronized. I do not seem to understand what constitutes a single "message" in signal, since there were definitely no 400 messages in all my contacts during that time. I would estimate the actual number to be lower than 30. Startup was again frustratingly slow and took nearly 80s when you include the time electron itself needs for launch. If I remember correctly, there have not been any images or documents that have been send while I last used the app, so this all came from text messages. I can only continue to emphasize the importance of fixing this. Wide-spread user adoption will not happen with this kind of performance. Corresponding debug log is in the attachments. |
@Sethur as far as I understand it, the concept of a message is an abstract thing. It can mean an actual text message, but it can also mean stuff like sending/receiving the time a message was sent, the time a message was received on the other end, and finally the time at which a message was read. Basically anything that requires communication with the signal servers will constitute a message, not just the actual text messages. So the much higher message count when syncing than actual number of text messages is completely normal and unavoidable (just a confusing way of naming it to be fair). The slow speed at which there messages are processed though, is really not acceptable for widespread adoption. I use my laptop during the week for work, but rarely use it during the weekend. The first launch of Signal on Monday usually takes minutes. |
Still very slow in v1.19.0 on Linux. Already waiting for 10 minutes.. |
This is our central place for tracking load-time performance: #3010 |
I have also the same problems using 1.19.0 on Linux |
This is still an issue, or became issue again after some time, since people reported it as solved. Windows 10 64 bit. |
Same Problem here, very annoying, thought Signal was a very good alternative to Whatsapp. |
@scottnonnenberg @scottnonnenberg-signal I am unable to post in issue #3010 Could you please reopen said issue so I can add some additional information? |
No. Create a new issue, and follow the template. |
v1.1.0
macOS 10.13.2
Loading messages ... took >30 seconds, for about 600 messages
Yes I've searched. This is very similar #1842 though mine is on mac not linux and mine is 1.1.0
Steps to repro
Get a few hundred messages
then launch signal latest on mac
actual result:
it's very slow to start
expected
it would launch instantly
unfortunately i'm not comfortable including anything from the logs. sorry i realize this is overly paranoid.
The text was updated successfully, but these errors were encountered: