signalapp / Signal-Desktop

A private messenger for Windows, macOS, and Linux.
https://signal.org/download
GNU Affero General Public License v3.0
14.5k stars 2.63k forks source link

Signal Desktop fails to start with `FATAL ERROR: Scavenger: semi-space copy Allocation failed - JavaScript heap out of memory` #6570

Open liori opened 1 year ago

liori commented 1 year ago

Bug Description

Signal Desktop fails to start after a recent update.

Steps to Reproduce

  1. run signal-desktop in a terminal emulator
  2. wait

Actual Result:

The application shows the screen with the animation of three circles, then everything disappears.

Expected Result:

Signal shows contacts and chats.

Screenshots

N/A

Platform Info

Signal Version: Freshly updated DEB package:

liori:~% apt show signal-desktop
Package: signal-desktop
Version: 6.28.0
Priority: optional
Section: default
Maintainer: Signal Messenger, LLC <support@signal.org>

Operating System:

Debian Bullseye

Link to Debug Log

[…]
{"level":30,"time":"2023-08-12T15:44:40.476Z","msg":"spellcheck: setting languages to: [\"pl\",\"pl\"]"}
{"level":30,"time":"2023-08-12T15:44:40.616Z","msg":"MainSQL: updateSchema:\n  Current user_version: 86;\n  Most recent db schema: 86;\n  SQLite version: 3.39.4;\n  SQLCipher version: 4.5.3 community;\n  (deprecated) schema_version: 371;\n"}
{"level":30,"time":"2023-08-12T15:44:41.086Z","msg":"got fast theme-setting value dark"}
{"level":30,"time":"2023-08-12T15:44:41.182Z","msg":"Updating BrowserWindow config: %s {\"maximized\":true,\"autoHideMenuBar\":true,\"fullscreen\":false,\"width\":2560,\"height\":1388,\"x\":2560,\"y\":52}"}
{"level":30,"time":"2023-08-12T15:44:41.183Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2023-08-12T15:44:41.184Z","msg":"config/set: Saved ephemeral config to disk"}
{"level":30,"time":"2023-08-12T15:44:41.757Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-08-12T15:44:41.762Z","msg":"System tray service: created"}
{"level":30,"time":"2023-08-12T15:44:41.762Z","msg":"System tray service: updating main window. Previously, there was not a window, and now there is"}
{"level":30,"time":"2023-08-12T15:44:41.762Z","msg":"System tray service: rendering no tray"}
{"level":30,"time":"2023-08-12T15:44:41.763Z","msg":"Begin ensuring permissions"}
{"level":30,"time":"2023-08-12T15:44:41.763Z","msg":"Ensuring file permissions for 4 files"}
{"level":30,"time":"2023-08-12T15:44:41.764Z","msg":"Finish ensuring permissions in 1ms"}
{"level":30,"time":"2023-08-12T15:44:41.780Z","msg":"main window is ready-to-show"}
{"level":30,"time":"2023-08-12T15:44:41.780Z","msg":"showing main window"}
{"level":30,"time":"2023-08-12T15:44:41.781Z","msg":"System tray service: rendering no tray"}
{"level":30,"time":"2023-08-12T15:44:42.168Z","msg":"MainSQL: slow query getAllStories duration=347ms"}
{"level":30,"time":"2023-08-12T15:44:42.942Z","msg":"Updating BrowserWindow config: %s {\"maximized\":false,\"autoHideMenuBar\":true,\"fullscreen\":false,\"width\":2558,\"height\":1387,\"x\":1,\"y\":52}"}
{"level":30,"time":"2023-08-12T15:44:42.942Z","msg":"config/set: Saving ephemeral config to disk"}
{"level":30,"time":"2023-08-12T15:44:42.942Z","msg":"config/set: Saved ephemeral config to disk"}

<--- Last few GCs --->

[3468892:0x7b4003d4000]    21886 ms: Scavenge 802.7 (852.8) -> 801.9 (859.8) MB, 4.44 / 0.00 ms  (average mu = 0.997, current mu = 0.953) allocation failure; 
[3468892:0x7b4003d4000]    21890 ms: Scavenge 809.6 (859.8) -> 810.1 (860.3) MB, 2.20 / 0.00 ms  (average mu = 0.997, current mu = 0.953) allocation failure; 
[3468892:0x7b4003d4000]    21893 ms: Scavenge 810.1 (860.3) -> 809.4 (867.8) MB, 2.85 / 0.00 ms  (average mu = 0.997, current mu = 0.953) allocation failure; 

<--- JS stacktrace --->

FATAL ERROR: Scavenger: semi-space copy Allocation failed - JavaScript heap out of memory
[1]    3468892 abort      signal-desktop
jamiebuilds-signal commented 1 year ago

Is this the entire debuglog from startup? Or did you truncate anything in the middle?

mitar commented 1 year ago

I have the same issue after last upgrade, my log:

Set Windows Application User Model ID (AUMID) { appUserModelId: 'org.whispersystems.signal-desktop' }
NODE_ENV production
NODE_CONFIG_DIR /snap/signal-desktop/510/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/user/snap/signal-desktop/510/.config/Signal
config/get: Successfully read user config file
config/get: Successfully read ephemeral config file
making app single instance
Error org.freedesktop.DBus.Error.Failed: cannot find desktop file "/var/lib/snapd/desktop/applications/signal-desktop_signal.desktop"
Error org.freedesktop.DBus.Error.Failed: cannot find desktop file "/var/lib/snapd/desktop/applications/signal-desktop_signal.desktop"
Gtk-Message: 20:44:32.300: Not loading module "atk-bridge": The functionality is provided by GTK natively. Please try to not load it.

(signal-desktop:10252): Gtk-WARNING **: 20:44:32.357: GTK+ module /snap/signal-desktop/510/gnome-platform/usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so cannot be loaded.
GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported.
Gtk-Message: 20:44:32.357: Failed to load module "canberra-gtk-module"

(signal-desktop:10252): Gtk-WARNING **: 20:44:32.358: GTK+ module /snap/signal-desktop/510/gnome-platform/usr/lib/gtk-2.0/modules/libcanberra-gtk-module.so cannot be loaded.
GTK+ 2.x symbols detected. Using GTK+ 2.x and GTK+ 3 in the same process is not supported.
Gtk-Message: 20:44:32.358: Failed to load module "canberra-gtk-module"
WARNING: Kernel has no file descriptor comparison support: Operation not permitted
{"level":30,"time":"2023-08-14T18:44:32.451Z","msg":"app.ready: preferred system locales: en-US, en"}
{"level":30,"time":"2023-08-14T18:44:32.452Z","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-08-14T18:44:32.452Z","msg":"locale: Preferred locales:  en-US, en"}
{"level":30,"time":"2023-08-14T18:44:32.453Z","msg":"locale: Matched locale: en"}
{"level":30,"time":"2023-08-14T18:44:32.469Z","msg":"locale: Text info direction for en: ltr"}
{"level":30,"time":"2023-08-14T18:44:32.471Z","msg":"app ready"}
{"level":30,"time":"2023-08-14T18:44:32.471Z","msg":"starting version 6.27.1"}
{"level":30,"time":"2023-08-14T18:44:32.471Z","msg":"media access status [object Undefined] [object Undefined]"}
{"level":30,"time":"2023-08-14T18:44:32.473Z","msg":"got fast theme-setting value light"}
{"level":30,"time":"2023-08-14T18:44:32.475Z","msg":"got fast theme-setting value light"}
{"level":30,"time":"2023-08-14T18:44:32.475Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-08-14T18:44:32.475Z","msg":"getSystemTraySetting saw --use-tray-icon flag. Returning MinimizeToSystemTray"}
{"level":30,"time":"2023-08-14T18:44:32.476Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":1466,\"height\":800,\"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\":70,\"y\":64}"}
{"level":30,"time":"2023-08-14T18:44:32.491Z","msg":"spellcheck: user locales: [\"en-US\",\"en\"]"}
{"level":30,"time":"2023-08-14T18:44:32.491Z","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-08-14T18:44:32.491Z","msg":"spellcheck: setting languages to: [\"en-US\",\"en\"]"}
{"level":30,"time":"2023-08-14T18:44:32.497Z","msg":"MainSQL: updateSchema:\n  Current user_version: 86;\n  Most recent db schema: 86;\n  SQLite version: 3.39.4;\n  SQLCipher version: 4.5.3 community;\n  (deprecated) schema_version: 370;\n"}
[10252:0814/204432.501877:ERROR:object_proxy.cc(590)] Failed to call method: org.freedesktop.login1.Manager.Inhibit: object_path= /org/freedesktop/login1: org.freedesktop.DBus.Error.AccessDenied: An AppArmor policy prevents this sender from sending this message to this recipient; type="method_call", sender=":1.197" (uid=1000 pid=10252 comm="/snap/signal-desktop/510/opt/Signal/signal-desktop" label="snap.signal-desktop.signal-desktop (enforce)") interface="org.freedesktop.login1.Manager" member="Inhibit" error name="(unset)" requested_reply="0" destination="org.freedesktop.login1" (uid=0 pid=926 comm="/lib/systemd/systemd-logind " label="unconfined")
{"level":30,"time":"2023-08-14T18:44:32.762Z","msg":"got fast theme-setting value light"}
(node:10422) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `exe --trace-deprecation ...` to show where the warning was created)
{"level":30,"time":"2023-08-14T18:44:33.276Z","msg":"got fast spellcheck setting true"}
{"level":30,"time":"2023-08-14T18:44:33.277Z","msg":"main window is ready-to-show"}
{"level":30,"time":"2023-08-14T18:44:33.277Z","msg":"showing main window"}
{"level":30,"time":"2023-08-14T18:44:33.282Z","msg":"System tray service: created"}
{"level":30,"time":"2023-08-14T18:44:33.282Z","msg":"System tray service: updating main window. Previously, there was not a window, and now there is"}
{"level":30,"time":"2023-08-14T18:44:33.282Z","msg":"System tray service: rendering no tray"}
{"level":30,"time":"2023-08-14T18:44:33.282Z","msg":"System tray service: enabling"}
{"level":30,"time":"2023-08-14T18:44:33.283Z","msg":"System tray service: rendering the tray"}
{"level":30,"time":"2023-08-14T18:44:33.283Z","msg":"System tray service: creating the tray"}
{"level":30,"time":"2023-08-14T18:44:33.285Z","msg":"Begin ensuring permissions"}
{"level":30,"time":"2023-08-14T18:44:33.287Z","msg":"Ensuring file permissions for 4 files"}
{"level":30,"time":"2023-08-14T18:44:33.288Z","msg":"Finish ensuring permissions in 3ms"}
{"level":30,"time":"2023-08-14T18:44:33.380Z","msg":"MainSQL: slow query getAllStories duration=40ms"}
Unhandled Error: Error [ERR_WORKER_OUT_OF_MEMORY]: Worker terminated due to reaching memory limit: JS heap out of memory
    at new NodeError (node:internal/errors:399:5)
    at [kOnExit] (node:internal/worker:278:26)
    at Worker.<computed>.onexit (node:internal/worker:200:20)
{"level":50,"time":"2023-08-14T18:45:02.724Z","msg":"Unhandled Error: Error [ERR_WORKER_OUT_OF_MEMORY]: Worker terminated due to reaching memory limit: JS heap out of memory\n    at new NodeError (node:internal/errors:399:5)\n    at [kOnExit] (node:internal/worker:278:26)\n    at Worker.<computed>.onexit (node:internal/worker:200:20)"}

Installed through snap on Ubuntu jammy.

jamiebuilds-signal commented 1 year ago

Do you and/or your contacts use Stories a lot? Seeing that MainSQL: slow query getAllStories duration=40ms is a pretty good hint thats whats taking up space in memory

mitar commented 1 year ago

I do not even know what stories are. And I use Signal only to talk to my family. So I would say no.

jamiebuilds-signal commented 1 year ago

That's interesting that they would taking any amount of time. Would you mind going to your primary device's settings and checking if Stories is turned off?

If they are currently turned on, it will give you the option at the bottom to turn them off.

If they are currently turned off, it will give you the option to turn them on.

mitar commented 1 year ago

So should I turn them on or off? Or just toggle whatever the setting is?

liori commented 1 year ago

Not in the middle, I've pasted the last few lines. Not much more than that though, this is the full thing. No stories, at least that I know of. Assuming that "stories" is "relacje" in my locale, they're enabled, but I don't see any there.

scottnonnenberg-signal commented 1 year ago

Please try v6.29.1 - we believe that it will fix this issue!

liori commented 1 year ago

Sorry, it doesn't work for me: https://gist.github.com/liori/98502843af1c6d1be7c03969ca003f75

ibexdata commented 1 year ago

Following. Having the exact same issue for weeks on Mac OS 12.6.8 and Signal Desktop 6.29.1.

Collected the stack heap by launching with open /Applications/Signal.app/Contents/MacOS/Signal --args 'Helper (Renderer) --trace-deprecation ...'

The main window launches and spins. I cannot open preferences to adjust anything. After a couple minutes it crashes with the out of memory error related to javascript and Electron Framework.

For what its worth, one new error just appeared a moment ago: "Error occurred in handler for 'settings:call:getCustomColors'" - that's new.

Set Windows Application User Model ID (AUMID) { AUMID: 'org.whispersystems.signal-desktop' } NODE_ENV production NODE_CONFIG_DIR /Applications/Signal.app/Contents/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: /Users/{username-redacted}/Library/Application Support/Signal config/get: Successfully read user config file config/get: Successfully read ephemeral config file making app single instance {"level":30,"time":"2023-08-30T18:52:47.838Z","msg":"app.ready: hour cycle preference: UnknownPreference"} {"level":30,"time":"2023-08-30T18:52:47.839Z","msg":"app.ready: preferred system locales: en-US, en"} {"level":30,"time":"2023-08-30T18:52:47.839Z","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-08-30T18:52:47.840Z","msg":"locale: Preferred locales: en-US, en"} {"level":30,"time":"2023-08-30T18:52:47.842Z","msg":"locale: Matched locale: en"} {"level":40,"time":"2023-08-30T18:52:47.876Z","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-08-30T18:52:47.877Z","msg":"locale: Text info direction for en: ltr"} {"level":30,"time":"2023-08-30T18:52:47.879Z","msg":"app ready"} {"level":30,"time":"2023-08-30T18:52:47.880Z","msg":"starting version 6.29.1"} {"level":30,"time":"2023-08-30T18:52:47.906Z","msg":"media access status not-determined not-determined"} {"level":30,"time":"2023-08-30T18:52:47.909Z","msg":"got fast theme-setting value system"} {"level":30,"time":"2023-08-30T18:52:47.912Z","msg":"got fast theme-setting value system"} {"level":30,"time":"2023-08-30T18:52:47.912Z","msg":"got fast spellcheck setting true"} {"level":30,"time":"2023-08-30T18:52:47.913Z","msg":"getSystemTraySetting had no flags and did no DB lookups. Returning DoNotUseSystemTray"} {"level":30,"time":"2023-08-30T18:52:47.913Z","msg":"Initializing BrowserWindow config: {\"show\":false,\"width\":598,\"height\":451,\"minWidth\":300,\"minHeight\":200,\"autoHideMenuBar\":false,\"titleBarStyle\":\"hidden\",\"titleBarOverlay\":false,\"backgroundColor\":\"#121212\",\"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]/build/icons/png/512x512.png\",\"x\":1301,\"y\":87}"} {"level":30,"time":"2023-08-30T18:52:47.981Z","msg":"spellcheck: user locales: [\"en-US\",\"en\"]"} {"level":30,"time":"2023-08-30T18:52:47.981Z","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-08-30T18:52:47.981Z","msg":"spellcheck: setting languages to: [\"en-US\",\"en\"]"} {"level":30,"time":"2023-08-30T18:52:47.987Z","msg":"MainSQL: updateSchema:\n Current user_version: 87;\n Most recent db schema: 87;\n SQLite version: 3.39.4;\n SQLCipher version: 4.5.3 community;\n (deprecated) schema_version: 371;\n"} {"level":30,"time":"2023-08-30T18:52:48.574Z","msg":"got fast theme-setting value system"} (node:4152) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead. (Use Signal Helper (Renderer) --trace-deprecation ... to show where the warning was created) {"level":30,"time":"2023-08-30T18:52:49.693Z","msg":"got fast spellcheck setting true"} {"level":30,"time":"2023-08-30T18:52:49.701Z","msg":"System tray service: created"} {"level":30,"time":"2023-08-30T18:52:49.702Z","msg":"System tray service: updating main window. Previously, there was not a window, and now there is"} {"level":30,"time":"2023-08-30T18:52:49.702Z","msg":"System tray service: rendering no tray"} {"level":30,"time":"2023-08-30T18:52:49.702Z","msg":"Begin ensuring permissions"} {"level":30,"time":"2023-08-30T18:52:49.705Z","msg":"Ensuring file permissions for 4 files"} {"level":30,"time":"2023-08-30T18:52:49.706Z","msg":"Finish ensuring permissions in 4ms"} {"level":30,"time":"2023-08-30T18:52:49.706Z","msg":"main window is ready-to-show"} {"level":30,"time":"2023-08-30T18:52:49.733Z","msg":"showing main window"} {"level":30,"time":"2023-08-30T18:52:49.842Z","msg":"System tray service: rendering no tray"} {"level":30,"time":"2023-08-30T18:52:50.248Z","msg":"MainSQL: slow query getAllStories duration=315ms"} {"level":30,"time":"2023-08-30T18:52:55.088Z","msg":"got fast theme-setting value system"} {"level":30,"time":"2023-08-30T18:52:55.264Z","msg":"got fast theme-setting value system"} {"level":30,"time":"2023-08-30T18:52:59.695Z","msg":"System tray service: rendering no tray"} {"level":30,"time":"2023-08-30T18:54:19.015Z","msg":"System tray service: rendering no tray"} {"level":30,"time":"2023-08-30T18:54:27.335Z","msg":"got fast theme-setting value system"} {"level":30,"time":"2023-08-30T18:54:27.497Z","msg":"got fast theme-setting value system"} {"level":50,"time":"2023-08-30T18:54:27.848Z","msg":"Error occurred in handler for 'settings:call:getCustomColors': TypeError: Cannot read properties of undefined (reading 'getState')\n at getCustomColors ([REDACTED]/preload.bundle.js:154:160173)\n at EventEmitter. ([REDACTED]/preload.bundle.js:63:6758)\n at EventEmitter.emit (node:events:513:28)\n at Object.onMessage (node:electron/js2c/renderer_init:2:9266)"} {"level":30,"time":"2023-08-30T18:54:40.044Z","msg":"System tray service: rendering no tray"} {"level":30,"time":"2023-08-30T18:54:40.667Z","msg":"System tray service: rendering no tray"} {"level":30,"time":"2023-08-30T18:54:43.568Z","msg":"System tray service: rendering no tray"} {"level":30,"time":"2023-08-30T18:55:37.613Z","msg":"System tray service: rendering no tray"}

<--- Last few GCs --->

[4147:0x7fdc41368000] 195293 ms: Scavenge (reduce) 3924.0 (4062.6) -> 3924.1 (4062.6) MB, 39.96 / 0.00 ms (average mu = 0.997, current mu = 0.997) allocation failure; [4147:0x7fdc41368000] 195335 ms: Scavenge (reduce) 3924.1 (4062.6) -> 3924.0 (4063.1) MB, 40.29 / 0.00 ms (average mu = 0.997, current mu = 0.997) allocation failure;

<--- JS stacktrace --->

FATAL ERROR: Scavenger: semi-space copy Allocation failed - JavaScript heap out of memory 1: 0x10e28e5c5 node::Buffer::New(v8::Isolate, char, unsigned long) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 2: 0x10e28e7e8 node::OnFatalError(char const, char const) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 3: 0x10853fba0 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate, char const, v8::OOMDetails const&) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 4: 0x10853fb3d v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate, char const, v8::OOMDetails const&) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 5: 0x108715d87 v8::internal::Heap::FinalizeIncrementalMarkingAtomically(v8::internal::GarbageCollectionReason) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 6: 0x10881295c v8::internal::SafepointScope::SafepointScope(v8::internal::Isolate, v8::internal::SafepointKind) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 7: 0x1087f21e8 v8::internal::SafepointScope::SafepointScope(v8::internal::Isolate, v8::internal::SafepointKind) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 8: 0x10856a810 v8::internal::HandleScopeImplementer::Iterate(v8::internal::RootVisitor) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 9: 0x10871f7f3 v8::internal::Heap::InSpaceSlow(unsigned long, v8::internal::AllocationSpace) const [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 10: 0x1087ed979 v8::internal::SafepointScope::SafepointScope(v8::internal::Isolate, v8::internal::SafepointKind) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 11: 0x1087194bc v8::internal::Heap::EnsureWasmCanonicalRttsSize(int) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 12: 0x108716195 v8::internal::Heap::stack() [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 13: 0x108714249 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 14: 0x10870a8fc v8::internal::HeapAllocator::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 15: 0x1086e6460 v8::internal::Factory::AllocateRaw(int, v8::internal::AllocationType, v8::internal::AllocationAlignment) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 16: 0x107252b96 v8::internal::FactoryBase::NewRawOneByteString(int, v8::internal::AllocationType) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 17: 0x1086e87f3 v8::internal::Factory::NewStringFromUtf8(v8::base::Vector const&, v8::internal::AllocationType) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 18: 0x10855f58a v8::String::NewFromUtf8(v8::Isolate, char const, v8::NewStringType, int) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 19: 0x15e1eaf78 Data::GetValueJS(v8::Isolate, sqlite3_stmt, int, bool) [/Applications/Signal.app/Contents/Resources/app.asar.unpacked/node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node] 20: 0x15e1eb049 Data::GetFlatRowJS(v8::Isolate, v8::Local, sqlite3_stmt, bool) [/Applications/Signal.app/Contents/Resources/app.asar.unpacked/node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node] 21: 0x15e1e59ac Statement::JS_all(v8::FunctionCallbackInfo const&) [/Applications/Signal.app/Contents/Resources/app.asar.unpacked/node_modules/@signalapp/better-sqlite3/build/Release/better_sqlite3.node] 22: 0x1085a5d5f v8::internal::Accessors::MakeAccessor(v8::internal::Isolate, v8::internal::Handle, void ()(v8::Local, v8::PropertyCallbackInfo const&), void (*)(v8::Local, v8::Local, v8::PropertyCallbackInfo const&)) [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 23: 0x106fcddf6 [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] 24: 0x106f36ce6 [/Applications/Signal.app/Contents/Frameworks/Electron Framework.framework/Electron Framework] zsh: abort /Applications/Signal.app/Contents/MacOS/Signal

ibexdata commented 1 year ago

TL;DR: This deletes your local desktop Signal history, but gets your Mac back up and running.

Depending on the urgency, for Mac OS you can rename the directory ~/Library/Application Support/Signal, delete /Applications/Signal.app and install the latest version. Register the desktop version with your mobile and you're back up and running.

liori commented 1 year ago

Upgraded from 6.29.1 to 6.30.1. Startup took 4 minutes, but the application started correctly and it usable. Thank you!

mitar commented 1 year ago

6.30.1 fixed it for me as well.