Closed binishjoshi closed 8 months ago
Sorry about this. I checked the logs and it appears that opening the sqlite database itself takes roughly 3 seconds, which is why you see this popup. Afterwards, the queries to the database seems to run a bit slow as well.
Could you tell me a bit more about your configuration? Do you use SSD hard drive?
Additionally, could you check the database size in the terminal, please? (ls -la ~/.config/Signal/sql
)
Could you tell me a bit more about your configuration? Do you use SSD hard drive?
I have this same issue, with --use-tray-icon
, on an SSD.
Meanwhile, on a different machine that runs a HDD, the splash stays for upwards a minute, which is just unacceptable.
I'd rather signal would not show any splash at all and would just launch when it's ready OR would just draw that in the main window. (the splash positions itself in such a way that it gets perfectly aligned on top of the signal icon in the middle of the main window as it loads and looks like a REALLY hacky attempt to add an "optimizing application . . ." underneath it, hoping nobody notices it's actually a whole separate borderless window on top of it)
@literal-0x4e could you send me your debug log, please?
@literal-0x4e could you send me your debug log, please?
redacted@redacted:~$ signal-desktop --disable-smooth-scrolling --use-tray-icon
Set Windows Application User Model ID (AUMID) { AUMID: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /opt/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME undefined
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/redacted/.config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
making app single instance
{"level":30,"time":"2023-09-12T14:13:24.952Z","msg":"app.ready: hour cycle preference: UnknownPreference"}
{"level":30,"time":"2023-09-12T14:13:24.953Z","msg":"app.ready: preferred system locales: en-US, en"}
{"level":30,"time":"2023-09-12T14:13:24.953Z","msg":"locale: Supported locales: af-ZA, ar, az-AZ, bg-BG, bn-BD, bs-BA, ca, cs, da, de, el, en, es, et-EE, eu, fa-IR, fi, fr, ga-IE, gl-ES, gu-IN, he, hi-IN, hr-HR, hu, id, it, ja, ka-GE, kk-KZ, km-KH, kn-IN, ko, ky-KG, lt-LT, lv-LV, mk-MK, ml-IN, mr-IN, ms, my, nb, nl, pa-IN, pl, pt-BR, pt-PT, ro-RO, ru, sk-SK, sl-SI, sq-AL, sr, sv, sw, ta-IN, te-IN, th, tl-PH, tr, ug, uk-UA, ur, vi, yue, zh-CN, zh-HK, zh-Hant"}
{"level":30,"time":"2023-09-12T14:13:24.953Z","msg":"locale: Preferred locales: en-US, en"}
{"level":30,"time":"2023-09-12T14:13:24.954Z","msg":"locale: Matched locale: en"}
{"level":40,"time":"2023-09-12T14:13:24.975Z","msg":"intl.onWarn [@formatjs/intl] \"defaultRichTextElements\" was specified but \"message\" was not pre-compiled. \nPlease consider using \"@formatjs/cli\" to pre-compile your messages for performance.\nFor more details see https://formatjs.io/docs/getting-started/message-distribution"}
{"level":30,"time":"2023-09-12T14:13:24.976Z","msg":"locale: Text info direction for en: ltr"}
{"level":30,"time":"2023-09-12T14:13:24.977Z","msg":"app ready"}
{"level":30,"time":"2023-09-12T14:13:24.977Z","msg":"starting version 6.30.1"}
{"level":30,"time":"2023-09-12T14:13:24.977Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2023-09-12T14:13:24.978Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-09-12T14:13:24.979Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-09-12T14:13:24.980Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-09-12T14:13:24.980Z","msg":"getSystemTraySetting saw --use-tray-icon flag. Returning MinimizeToSystemTray"}
{"level":30,"time":"2023-09-12T14:13:24.980Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":800,\"height\":600,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"titleBarOverlay\":false,\"backgroundColor\":\"#3a76f0\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"enableBlinkFeatures\":\"CSSPseudoDir,CSSLogical\",\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.bundle.js\",\"backgroundThrottling\":true,\"enablePreferredSizeMode\":true,\"disableBlinkFeatures\":\"Accelerated2dCanvas,AcceleratedSmallCanvases\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\",\"x\":0,\"y\":18}"}
{"level":30,"time":"2023-09-12T14:13:25.003Z","msg":"spellcheck: user locales: [\"en-US\",\"en\"]"}
{"level":30,"time":"2023-09-12T14:13:25.003Z","msg":"spellcheck: available spellchecker languages: [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2023-09-12T14:13:25.004Z","msg":"spellcheck: setting languages to: [\"en-US\",\"en\"]"}
{"level":30,"time":"2023-09-12T14:13:25.010Z","msg":"MainSQL: updateSchema:\n Current user_version: 91;\n Most recent db schema: 920;\n SQLite version: 3.39.4;\n SQLCipher version: 4.5.3 community;\n (deprecated) schema_version: 437;\n"}
{"level":30,"time":"2023-09-12T14:13:25.011Z","msg":"MainSQL: updateToSchemaVersion920(kyberPreKeys): Found 225 total keys"}
{"level":30,"time":"2023-09-12T14:13:25.011Z","msg":"MainSQL: updateToSchemaVersion920(signedPreKeys): Found 30 total keys"}
{"level":30,"time":"2023-09-12T14:13:25.011Z","msg":"MainSQL: updateToSchemaVersion920: Done with deletions"}
{"level":30,"time":"2023-09-12T14:13:25.011Z","msg":"MainSQL: updateToSchemaVersion920: Starting vacuum..."}
{"level":30,"time":"2023-09-12T14:13:25.311Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-09-12T14:13:25.762Z","msg":"main window is ready-to-show"}
{"level":30,"time":"2023-09-12T14:13:27.981Z","msg":"sql.initialize is taking more than three seconds; showing loading dialog"}
{"level":30,"time":"2023-09-12T14:13:28.004Z","msg":"got fast theme-setting value system"}
Trace/breakpoint trap
Do note I am also affected by #6597, hence the short log with Trace/breakpoint trap. In fact, due to that bug, the several seconds of the splash screen is the only thing I get to see of the Signal client before it crashes
@literal-0x4e I believe what you are seeing is #6597 and this should be resolved now. Slow migrations might cause the "Optimizing" window to appear, but they should not appear after restarts.
Well, first of all, I've been having this for many, many months now, way before #6597 hit, yet was too discouraged to report it and only chimed in when I saw someone else do it. I still see it, even after restarts. On consecutive launches, on an SSD, it just flashes briefly and steals my input, even if I switch to a different desktop before it does, while on a HDD it just stays there for quite a while. The only reason why I mentioned #6597 at all is because due to that bug, I had some unusual suff in the log (the Trace/breakpoint trap and such).
Ah, that's important then, sorry. If you can know start the app - could you submit a full debug log, please?
Alright, here you go, a full log from launching, letting it sit there for a little while after it's done and then shutting it down:
redacted@redacted:~$ signal-desktop --disable-smooth-scrolling --use-tray-icon
Set Windows Application User Model ID (AUMID) { AUMID: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /opt/Signal/resources/app.asar/config
NODE_CONFIG {}
ALLOW_CONFIG_MUTATIONS undefined
HOSTNAME undefined
NODE_APP_INSTANCE undefined
SUPPRESS_NO_CONFIG_WARNING undefined
SIGNAL_ENABLE_HTTP undefined
userData: /home/redacted/.config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
making app single instance
{"level":30,"time":"2023-09-14T17:13:21.541Z","msg":"app.ready: hour cycle preference: UnknownPreference"}
{"level":30,"time":"2023-09-14T17:13:21.541Z","msg":"app.ready: preferred system locales: en-US, en"}
{"level":30,"time":"2023-09-14T17:13:21.542Z","msg":"locale: Supported locales: af-ZA, ar, az-AZ, bg-BG, bn-BD, bs-BA, ca, cs, da, de, el, en, es, et-EE, eu, fa-IR, fi, fr, ga-IE, gl-ES, gu-IN, he, hi-IN, hr-HR, hu, id, it, ja, ka-GE, kk-KZ, km-KH, kn-IN, ko, ky-KG, lt-LT, lv-LV, mk-MK, ml-IN, mr-IN, ms, my, nb, nl, pa-IN, pl, pt-BR, pt-PT, ro-RO, ru, sk-SK, sl-SI, sq-AL, sr, sv, sw, ta-IN, te-IN, th, tl-PH, tr, ug, uk-UA, ur, vi, yue, zh-CN, zh-HK, zh-Hant"}
{"level":30,"time":"2023-09-14T17:13:21.542Z","msg":"locale: Preferred locales: en-US, en"}
{"level":30,"time":"2023-09-14T17:13:21.543Z","msg":"locale: Matched locale: en"}
{"level":40,"time":"2023-09-14T17:13:21.557Z","msg":"intl.onWarn [@formatjs/intl] \"defaultRichTextElements\" was specified but \"message\" was not pre-compiled. \nPlease consider using \"@formatjs/cli\" to pre-compile your messages for performance.\nFor more details see https://formatjs.io/docs/getting-started/message-distribution"}
{"level":30,"time":"2023-09-14T17:13:21.558Z","msg":"locale: Text info direction for en: ltr"}
{"level":30,"time":"2023-09-14T17:13:21.559Z","msg":"app ready"}
{"level":30,"time":"2023-09-14T17:13:21.559Z","msg":"starting version 6.30.2"}
{"level":30,"time":"2023-09-14T17:13:21.559Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2023-09-14T17:13:21.560Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-09-14T17:13:21.561Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-09-14T17:13:21.562Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-09-14T17:13:21.562Z","msg":"getSystemTraySetting saw --use-tray-icon flag. Returning MinimizeToSystemTray"}
{"level":30,"time":"2023-09-14T17:13:21.562Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":2319,\"height\":1256,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"default\",\"titleBarOverlay\":false,\"backgroundColor\":\"#3a76f0\",\"webPreferences\":{\"devTools\":false,\"spellcheck\":true,\"enableBlinkFeatures\":\"CSSPseudoDir,CSSLogical\",\"nodeIntegration\":false,\"nodeIntegrationInWorker\":false,\"sandbox\":false,\"contextIsolation\":true,\"preload\":\"[REDACTED]/preload.bundle.js\",\"backgroundThrottling\":true,\"enablePreferredSizeMode\":true,\"disableBlinkFeatures\":\"Accelerated2dCanvas,AcceleratedSmallCanvases\"},\"icon\":\"[REDACTED]/images/signal-logo-desktop-linux.png\",\"x\":0,\"y\":18}"}
{"level":30,"time":"2023-09-14T17:13:21.574Z","msg":"spellcheck: user locales: [\"en-US\",\"en\"]"}
{"level":30,"time":"2023-09-14T17:13:21.574Z","msg":"spellcheck: available spellchecker languages: [\"af\",\"bg\",\"ca\",\"cs\",\"cy\",\"da\",\"de\",\"de-DE\",\"el\",\"en\",\"en-AU\",\"en-CA\",\"en-GB\",\"en-GB-oxendict\",\"en-US\",\"es\",\"es-419\",\"es-AR\",\"es-ES\",\"es-MX\",\"es-US\",\"et\",\"fa\",\"fo\",\"fr\",\"fr-FR\",\"he\",\"hi\",\"hr\",\"hu\",\"hy\",\"id\",\"it\",\"it-IT\",\"ko\",\"lt\",\"lv\",\"nb\",\"nl\",\"pl\",\"pt\",\"pt-BR\",\"pt-PT\",\"ro\",\"ru\",\"sh\",\"sk\",\"sl\",\"sq\",\"sr\",\"sv\",\"ta\",\"tg\",\"tr\",\"uk\",\"vi\"]"}
{"level":30,"time":"2023-09-14T17:13:21.574Z","msg":"spellcheck: setting languages to: [\"en-US\",\"en\"]"}
{"level":30,"time":"2023-09-14T17:13:21.604Z","msg":"MainSQL: updateSchema:\n Current user_version: 920;\n Most recent db schema: 920;\n SQLite version: 3.39.4;\n SQLCipher version: 4.5.3 community;\n (deprecated) schema_version: 437;\n"}
{"level":30,"time":"2023-09-14T17:13:21.851Z","msg":"got fast theme-setting value system"}
{"level":30,"time":"2023-09-14T17:13:22.113Z","msg":"Updating BrowserWindow config: %s {\"maximized\":true,\"autoHideMenuBar\":false,\"fullscreen\":false,\"width\":2319,\"height\":1256,\"x\":0,\"y\":18}"}
{"level":30,"time":"2023-09-14T17:13:22.113Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2023-09-14T17:13:22.114Z","msg":"config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2023-09-14T17:13:22.274Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-09-14T17:13:22.275Z","msg":"main window is ready-to-show"}
{"level":30,"time":"2023-09-14T17:13:22.275Z","msg":"showing main window"}
{"level":30,"time":"2023-09-14T17:13:22.279Z","msg":"System tray service: created"}
{"level":30,"time":"2023-09-14T17:13:22.279Z","msg":"System tray service: updating main window. Previously, there was not a window, and now there is"}
{"level":30,"time":"2023-09-14T17:13:22.279Z","msg":"System tray service: rendering no tray"}
{"level":30,"time":"2023-09-14T17:13:22.279Z","msg":"System tray service: enabling"}
{"level":30,"time":"2023-09-14T17:13:22.279Z","msg":"System tray service: rendering the tray"}
{"level":30,"time":"2023-09-14T17:13:22.279Z","msg":"System tray service: creating the tray"}
{"level":30,"time":"2023-09-14T17:13:22.281Z","msg":"Begin ensuring permissions"}
{"level":30,"time":"2023-09-14T17:13:22.286Z","msg":"Ensuring file permissions for 4 files"}
{"level":30,"time":"2023-09-14T17:13:22.286Z","msg":"Finish ensuring permissions in 5ms"}
{"level":30,"time":"2023-09-14T17:13:23.457Z","msg":"MainSQL: slow query getAllStories duration=1090ms"}
(signal-desktop:15428): IBUS-WARNING **: 20:13:23.459: Unable to connect to ibus: Could not connect: Connection refused
{"level":30,"time":"2023-09-14T17:13:23.526Z","msg":"Prevent display sleep service: allowing display sleep"}
{"level":30,"time":"2023-09-14T17:13:23.526Z","msg":"Background throttling enabled because no call is active"}
{"level":30,"time":"2023-09-14T17:13:23.691Z","msg":"updater/start: Updates disabled - not starting new version checks"}
{"level":30,"time":"2023-09-14T17:13:23.692Z","msg":"App loaded - time: 2134"}
{"level":30,"time":"2023-09-14T17:13:23.692Z","msg":"SQL init - time: 56"}
{"level":30,"time":"2023-09-14T17:13:23.692Z","msg":"Preload - time: 427"}
{"level":30,"time":"2023-09-14T17:13:23.692Z","msg":"WebSocket connect - time: 525"}
{"level":30,"time":"2023-09-14T17:13:23.692Z","msg":"Processed count: 0"}
{"level":30,"time":"2023-09-14T17:13:23.692Z","msg":"Messages per second: 0"}
{"level":30,"time":"2023-09-14T17:13:33.557Z","msg":"before-quit event {\"readyForShutdown\":false,\"shouldQuit\":false}"}
{"level":30,"time":"2023-09-14T17:13:33.557Z","msg":"System tray service: markShouldQuit"}
{"level":30,"time":"2023-09-14T17:13:33.558Z","msg":"close event {\"readyForShutdown\":false,\"shouldQuit\":true}"}
{"level":30,"time":"2023-09-14T17:13:33.558Z","msg":"System tray service: not rendering the tray, quitting"}
{"level":30,"time":"2023-09-14T17:13:33.558Z","msg":"requestShutdown: Requesting close of mainWindow..."}
{"level":30,"time":"2023-09-14T17:13:36.412Z","msg":"MainSQL: slow query close duration=2830ms"}
{"level":30,"time":"2023-09-14T17:13:36.413Z","msg":"requestShutdown: Response received"}
{"level":30,"time":"2023-09-14T17:13:36.416Z","msg":"before-quit event {\"readyForShutdown\":true,\"shouldQuit\":true}"}
{"level":30,"time":"2023-09-14T17:13:36.416Z","msg":"System tray service: markShouldQuit"}
{"level":30,"time":"2023-09-14T17:13:36.416Z","msg":"close event {\"readyForShutdown\":true,\"shouldQuit\":true}"}
{"level":30,"time":"2023-09-14T17:13:36.418Z","msg":"System tray service: updating main window. Previously, there was a window, and now there is not"}
{"level":30,"time":"2023-09-14T17:13:36.418Z","msg":"System tray service: rendering no tray"}
@literal-0x4e could you confirm that you saw the "Optimizing application" mini-window?
Hmm... I made very sure, complete with recording what's happening on the screen and I gotta say: it's a splash, but without a label. So technically, no, it is in fact not the "Optimizing application" splash.
Ah, that might be normal. We always show the splash screen while starting up and pulling the latest messages from the server. It sounds like in your case whole process took 2 seconds which is within the bounds of what it takes normally.
Is there a way to... suppress the said splash? It serves no purpose for me other than being a genuine annoyance.
@literal-0x4e We may be a bit confused here. Is it that you don't like what the Signal Desktop window does when it first shows, the triple-dot progress animation? Or that it steals focus?
I think we've established that it's not a separate little 'Optimizing' window, right? Because that only shows when database operations take a long time?
Could you tell me a bit more about your configuration? Do you use SSD hard drive?
Model Family: Toshiba 2.5" HDD MQ01ABF...
Device Model: TOSHIBA MQ01ABF050
Serial Number: X6KHT3IHT
LU WWN Device Id: 5 000039 751809799
Firmware Version: AM0P2D
User Capacity: 500,107,862,016 bytes [500 GB]
Sector Sizes: 512 bytes logical, 4096 bytes physical
Rotation Rate: 5400 rpm
Form Factor: 2.5 inches
Device is: In smartctl database 7.3/5528
ATA Version is: ATA8-ACS (minor revision not indicated)
SATA Version is: SATA 3.0, 6.0 Gb/s (current: 6.0 Gb/s)
SMART support is: Available - device has SMART capability.
SMART support is: Enabled
could you check the database size in the terminal, please?
162406400 Sep 16 11:41 db.sqlite
@cyclonejet Are you still seeing the original behavior? Have any recent releases changed things for you?
@scottnonnenberg-signal I haven't checked. Was it fixed in the recent releases?
@cyclonejet The specific changes we made had to do with database size, and involved a number of large migrations. The small popup only happens when the database takes a long time to load. We expected that was why the small popup was shown. And that it shouldn't happen anymore.
The 'splash screen' (which we call the loading screen) is shown on every startup. We haven't made changes around when it shows. But it shouldn't show for very long unless there are messages to be downloaded and processed, and you should see a progress bar for that.
So, we're looking for more detail on the current behavior you see.
I've not yet seen the issue. I'll monitor it for few days/weeks and will update here.
Hopefully it is resolved for you. Closing the ticket!
Bug Description
When I open Signal with the option
--start-in-tray
, I get a visible splash screen for a brief amount of time.Steps to Reproduce
--start-in-tray
option. Exact command I use is:"/opt/Signal Beta/signal-desktop-beta" --no-sandbox --start-in-tray
Actual Result: My focus gets shifted to a brief splash screen that says 'Optimizing application.'
Expected Result:
It should not appear, it should do that on the background.
Platform Info
Signal Version: "/opt/Signal Beta/signal-desktop-beta" --no-sandbox --start-in-tray
Operating System: EndeavorOS
Linked Device Version: 6.30.4
Link to Debug Log
https://debuglogs.org/desktop/6.29.0-beta.1/267114717a20d871f20179543b4079ff64c2aa179791883646f0130764a8d578.gz