Foundry376 / Mailspring

:love_letter: A beautiful, fast and fully open source mail client for Mac, Windows and Linux.
https://getmailspring.com/
GNU General Public License v3.0
15.46k stars 901 forks source link

The display compositor is frequently crashing. #2366

Closed nuzzzen closed 2 years ago

nuzzzen commented 2 years ago

Cannot get mailspring to start since yesterday (system) update. This is what I get if I start from terminal (even with -l or --test option):

Gtk-Message: 16:02:24.150: Failed to load module "colorreload-gtk-module"
Gtk-Message: 16:02:24.150: Failed to load module "window-decorations-gtk-module"
Gtk-Message: 16:02:24.150: Failed to load module "appmenu-gtk-module"
Running database migrations
App load time: 129ms

{"error":null}
(electron) The default value of app.allowRendererProcessReuse is deprecated, it is currently "false".  It will change to be "true" in Electron 9.  For more information please check https://github.com/electron/electron/issues/18397
Manual update check (updates.getmailspring.com/check/linux/x64/1.9.2-6e14dad1/23d20a4d-b50b-4f50-a556-c95cc5af7314/stable) returned 204
[7343:0215/160225.774108:FATAL:gpu_data_manager_impl_private.cc(1034)] The display compositor is frequently crashing. Goodbye.
Failed to get crash dump id.
Report Id: {"success":true}
Failed to get crash dump id.
Report Id: {"success":true}
Illegal instruction (core dumped)

My system's info:

OS: Arch Linux x86_64 Kernel: 5.16.9-arch1-1 WM: herbstluftwm CPU: Intel i7-9700K (8) @ 4.900GHz GPU: NVIDIA GeForce GTX 1060 6GB

wulfalpha commented 2 years ago

I'm getting the same issue with the same error OS Arch Linux kernal 5.15.11 WM Qtile GPU GeForce RTX 2060

haoadoreorange commented 2 years ago

Second this, can't use since the latest updates. Arch x64 kernel 5.16.9-arch1-1 Gnome

KasraF commented 2 years ago

Same for me.

OS: Arch Linux x86_64 Kernel: 5.16.9-arch1-1 WM: LeftWM (using picom as the compositor)

RArbore commented 2 years ago

Same.

OS: Arch Linux x86_64 Kernel: 5.16.9-arch1-1 WM: dwm, picom compositor (crashes w/ and w/o picom running)

Phylu commented 2 years ago

Hey everyone,

thanks for the report. Unfortunately, I am not sure if I am able to do anything about that. The log points to something with the graphics display. If this is an issue with the electron version, there may be a solution in the pipeline already. Is anybody able (and willing) to build Mailspring from source based on this branch and see if this has the same problems? https://github.com/Phylu/Mailspring/tree/electron-upgrade

Otherwise, this seems like either an arch issue (as there were only arch reports so far), or an upgrade with any used library, that only happened on arch as of yet due to the rolling release cycle. Can any of you post what packages were upgraded? Maybe this also helps to see where the problem is.

joshualawson commented 2 years ago

Having the same issue on Arch, I hadn't updated in a good week, so for me it could be anything, but I did notice the nvidia packages did get an update, that could be the cause.

KasraF commented 2 years ago

Thanks for the response @Phylu! I can't build it locally (using npm run-script build requires having the deb and rpm pacakge managers?), but running it (npm install; npm start;) from the branch you linked (electron-upgrade) does work!

It starts up and doesn't have any notable errors.

wodger1912 commented 2 years ago

@Phylu After naffing around changing node versions and all that jazz, also managed to get the branch you linked running. If it helps, I updated the system yesterday (daily updates when I startup) - I've listed the packages that were updated on my system at that time (Mailspring worked before update) - Sorry the list is long, KDE did an update at the same time, hopefully it might lead to a clue what has caused this:

(Zen kernel running Plasma)

linux-api-headers (5.12.3-1 -> 5.16.8-1) glibc (2.33-5 -> 2.35-2) gcc-libs (11.1.0-3 -> 11.2.0-3) util-linux-libs (2.37.3-2 -> 2.37.4-1) libsysprof-capture (3.42.1-2 -> 3.42.1-3) lib32-glibc (2.33-5 -> 2.35-2) libelf (0.186-4 -> 0.186-5) util-linux (2.37.3-2 -> 2.37.4-1) qt5-base (5.15.2+kde+r297-2 -> 5.15.2+kde+r298-1) attica (5.90.0-1 -> 5.91.0-1) ki18n (5.90.0-1 -> 5.91.0-1) karchive (5.90.0-1 -> 5.91.0-1) kconfig (5.90.0-1 -> 5.91.0-1) kcoreaddons (5.90.0-1 -> 5.91.0-1) kfilemetadata (5.90.0-1 -> 5.91.0-1) kidletime (5.90.0-1 -> 5.91.0-1) mpfr (4.1.0.p13-1 -> 4.1.0.p13-2) solid (5.90.0-1 -> 5.91.0-1) kwidgetsaddons (5.90.0-1 -> 5.91.0-1) kjobwidgets (5.90.0-1 -> 5.91.0-1) kdbusaddons (5.90.0-1 -> 5.91.0-1) kwindowsystem (5.90.0-1 -> 5.91.0-1) kcrash (5.90.0-1 -> 5.91.0-1) kglobalaccel (5.90.0-1 -> 5.91.0-1) kauth (5.90.0-1 -> 5.91.0-1) kcodecs (5.90.0-1 -> 5.91.0-1) kguiaddons (5.90.0-1 -> 5.91.0-1) kconfigwidgets (5.90.1-1 -> 5.91.0-1) kitemviews (5.90.0-1 -> 5.91.0-1) kiconthemes (5.90.0-1 -> 5.91.0-1) kxmlgui (5.90.0-1 -> 5.91.0-1) kbookmarks (5.90.0-1 -> 5.91.0-1) libtool (2.4.6+42+gb88cebd5-16 -> 2.4.6+59+gb55b1cc8-2) knotifications (5.90.0-1 -> 5.91.0-1) kservice (5.90.0-1 -> 5.91.0-1) kwallet (5.90.0-1 -> 5.91.0-1) kcompletion (5.90.0-1 -> 5.91.0-1) sonnet (5.90.0-1 -> 5.91.0-1) ktextwidgets (5.90.0-1 -> 5.91.0-1) kded (5.90.0-1 -> 5.91.0-1) kio (5.90.0-1 -> 5.91.0-1) baloo (5.90.0-1 -> 5.91.0-1) binutils (2.36.1-3 -> 2.38-3) bluez-qt (5.90.0-1 -> 5.91.0-1) breeze-icons (5.90.0-1 -> 5.91.0-1) elfutils (0.186-4 -> 0.186-5) kpackage (5.90.0-1 -> 5.91.0-1) syndication (5.90.0-1 -> 5.91.0-1) knewstuff (5.90.0-1 -> 5.91.0-1) frameworkintegration (5.90.0-2 -> 5.91.0-1) gcc (11.1.0-3 -> 11.2.0-3) kactivities (5.90.0-1 -> 5.91.0-1) kactivities-stats (5.90.0-1 -> 5.91.0-1) kdeclarative (5.90.0-1 -> 5.91.0-1) kcmutils (5.90.0-1 -> 5.91.0-1) kcontacts (1:5.90.0-1 -> 1:5.91.0-1) kunitconversion (5.90.0-1 -> 5.91.0-1) kitemmodels (5.90.0-1 -> 5.91.0-1) kemoticons (5.90.0-1 -> 5.91.0-1) kparts (5.90.0-1 -> 5.91.0-1) kdelibs4support (5.90.0-1 -> 5.91.0-1) kpty (5.90.0-1 -> 5.91.0-1) kdesu (5.90.0-1 -> 5.91.0-1) kdnssd (5.90.0-1 -> 5.91.0-1) kholidays (1:5.90.0-1 -> 1:5.91.0-1) kimageformats (5.90.0-1 -> 5.91.0-1) kirigami2 (5.90.0-1 -> 5.91.0-1) knotifyconfig (5.90.0-1 -> 5.91.0-1) kpeople (5.90.0-1 -> 5.91.0-1) kquickcharts (5.90.0-1 -> 5.91.0-1) kwayland (5.90.0-1 -> 5.91.0-1) plasma-framework (5.90.0-1 -> 5.91.0-1) threadweaver (5.90.0-1 -> 5.91.0-1) krunner (5.90.0-1 -> 5.91.0-1) syntax-highlighting (5.90.0-1 -> 5.91.0-1) ktexteditor (5.90.0-2 -> 5.91.0-1) lib32-gcc-libs (11.1.0-3 -> 11.2.0-3) lib32-util-linux (2.37.3-1 -> 2.37.4-1) libbpf (0.6.1-1 -> 0.7.0-1) libqalculate (3.22.0-1 -> 4.0.0-1) linux-zen (5.16.8.zen1-1 -> 5.16.9.zen1-1) linux-zen-headers (5.16.8.zen1-1 -> 5.16.9.zen1-1) man-db (2.10.0-1 -> 2.10.1-1) python-setuptools (1:59.2.0-1 -> 1:59.3.0-1) meson (0.61.1-1 -> 0.61.2-1) modemmanager-qt (5.90.0-1 -> 5.91.0-1) networkmanager-qt (5.90.0-1 -> 5.91.0-1) prison (5.90.0-1 -> 5.91.0-1) purpose (5.90.0-1 -> 5.91.0-1) python-requests (2.26.0-5 -> 2.27.0-1) qpdf (10.5.0-1 -> 10.6.1-1) qqc2-desktop-style (5.90.0-1 -> 5.91.0-1) remmina (1:1.4.23-3 -> 1:1.4.24-1) vala (0.54.6-1 -> 0.54.7-1)

Anything else I can help with, let me know

lucasduartesobreira commented 2 years ago

I was having the same issue after some updates and I've managed to make it work again reverting these:

glibc (2.33-5 -> 2.35-2) gcc-libs (11.1.0-3 -> 11.2.0-3) lib32-glibc (2.33-5 -> 2.35-2) binutils (2.36.1-3 -> 2.38-3) gcc (11.1.0-3 -> 11.2.0-3)

Phylu commented 2 years ago

Thanks for the follow-ups. I will try to push the merge of the electron update forward. If we are lucky this will resolve the issue then. Maybe there was an API change in the glibc which makes it incompatible with older electron versions?

haoadoreorange commented 2 years ago

I was having the same issue after some updates and I've managed to make it work again reverting these:

glibc (2.33-5 -> 2.35-2)

gcc-libs (11.1.0-3 -> 11.2.0-3)

lib32-glibc (2.33-5 -> 2.35-2)

binutils (2.36.1-3 -> 2.38-3)

gcc (11.1.0-3 -> 11.2.0-3)

I confirm that it works on my side reverting theses also.

EDIT: However, it breaks vim since vim updated to new glibc, and potentially other things. For the moment, I resort to other mail clients waiting for the merge to be published.

nuzzzen commented 2 years ago

I was having the same issue after some updates and I've managed to make it work again reverting these:

glibc (2.33-5 -> 2.35-2) gcc-libs (11.1.0-3 -> 11.2.0-3) lib32-glibc (2.33-5 -> 2.35-2) binutils (2.36.1-3 -> 2.38-3) gcc (11.1.0-3 -> 11.2.0-3)

Searching here and there I found out that also MS Teams won't start after updating those pkgs (and this has been confirmed on it's AUR page.

I downgraded and suddenly everything came back to life! Pretty sure it's not a mailspring issue at this point, but I'll leave this conclusion to people who are certainly more expert than me.

Phylu commented 2 years ago

Thanks a lot for the further information regarding electron. I will try to push the upgrade forward as fast as possible. For more information regarding the state, please refer to: https://github.com/Foundry376/Mailspring/pull/2357

Mistreaper commented 2 years ago

Same here. On OS Arch Linux x86_64 5.6.10-arch1-1, installed mailspring through the AUR. For some reason mailspring works on my laptop.

Edit: huh, snap works for me

wulfalpha commented 2 years ago

Edit: huh, snap works for me

Yeah snap seems to work because it brings it's own dependencies with it. I think the Flatpak works too.

RArbore commented 2 years ago

Any update on when this will be resolved? I see that the pull request to upgrade electron version has been silent for some time.

pawelswiszcz commented 2 years ago

Hi, today I have an error when open Mailspring

╰─ mailspring                                                                                                                                                                                                                                                                                                                                                                              ─╯
Running database migrations
App load time: 190ms

{"error":null}
(electron) The default value of app.allowRendererProcessReuse is deprecated, it is currently "false".  It will change to be "true" in Electron 9.  For more information please check https://github.com/electron/electron/issues/18397
Manual update check (updates.getmailspring.com/check/linux/x64/1.9.2-6e14dad1/0dc598f3-469e-440d-ad00-0cdb97a65d07/stable) returned 204
[6281:0227/213616.472843:FATAL:gpu_data_manager_impl_private.cc(1034)] The display compositor is frequently crashing. Goodbye.
Failed to get crash dump id.
Report Id: {"success":true}
Failed to get crash dump id.
Report Id: {"success":true}
[1]    6281 illegal hardware instruction (core dumped)  mailspring

The issue in electron GitHub is closed. Bumping electron version will solve the issue? If yes, please make upgrade :P

inanc-g commented 2 years ago

For those of you waiting on this issue and not wanting to downgrade any packages, try running mailspring with disabled sandbox:

mailspring --no-sandbox

Albeit disabling the sandbox is not ideal, this might be a possible workaround until the underlying issue is resolved.
Another alternative could be using --disable-seccomp-filter-sandbox.

See also the comments on the AUR package of microsoft-teams, which is currently suffering from the same error, for some more information.

Phylu commented 2 years ago

This should be resolved in https://github.com/Foundry376/Mailspring/releases/tag/1.10.0

Please let us know, if you are still encountering any problems.