sozi-projects / Sozi

A "zooming" presentation editor
http://sozi.baierouge.fr
Mozilla Public License 2.0
1.59k stars 165 forks source link

SOZI crash on launching #603

Closed RafaelLinux closed 2 years ago

RafaelLinux commented 2 years ago

Summary of your problem or feature request

Crash when launching

Anyway I execute sozi (from uncompressed directory or RPM installed) it ends immediately crashing:

[10876:0209/145028.132675:FATAL:gpu_data_manager_impl_private.cc(439)] GPU process isn't usable. Goodbye.
`trap' para punto de parada/seguimiento (`core' generado)

Version of Sozi and other relevant software

Steps to reproduce the problem

1- Extract sozi or install from RPM 2- Launch sozi

What did you do to make the problem happen? Trying to execute sozi

Give enough details to enable us to reproduce the problem. Using NVidia private drivers

Expected behavior

What results did you expect? To launch sozi!!!

Observed behavior

What results did you actually get? An empty windows appears and vanish

edmundlaugasson commented 2 years ago

Same issue also here. Tried AppImage version:

./Sozi-22.2.20-1645393457.AppImage 
[64702:0221/195253.125881:FATAL:gpu_data_manager_impl_private.cc(439)] GPU process isn't usable. Goodbye.
Trace/breakpoint trap (core dumped)

also Arch Linux version:

sozi 
[64110:0221/195038.871795:FATAL:gpu_data_manager_impl_private.cc(439)] GPU process isn't usable. Goodbye.
Trace/breakpoint trap (core dumped)

Tried also

./sozi 
[65142:0221/195925.756917:FATAL:gpu_data_manager_impl_private.cc(439)] GPU process isn't usable. Goodbye.
Trace/breakpoint trap (core dumped)

Version Sozi-20.05.09-1589035558-linux-x64.tar.xz even opened file open dialog, but when I closed it, crash occured:

./Sozi 
Fontconfig warning: "/usr/share/fontconfig/conf.avail/05-reset-dirs-sample.conf", line 6: unknown element "reset-dirs"
[68418:0221/202455.846005:FATAL:gpu_data_manager_impl_private.cc(894)] The display compositor is frequently crashing. Goodbye.
Trace/breakpoint trap (core dumped)

Most concerning, that newer versions of Sozi are so broken... But finally found a version, that worked - Sozi-19.04.22-1555944973-linux-x64.tgz - this works! Unbelievable! So many versions back... I hope developers may conclude, that more recent versions may be on wrong direction. Hopefully Sozi will be fixed!

Running Sozi 22.02.03 via gdb for debugging purposes:

Starting program: /usr/bin/sozi 
[Thread debugging using libthread_db enabled]
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[New Thread 0x7ffff18a1640 (LWP 40091)]
[Detaching after fork from child process 40092]
[Detaching after fork from child process 40093]
[Detaching after fork from child process 40094]
[New Thread 0x7ffff10a0640 (LWP 40097)]
[New Thread 0x7ffff089f640 (LWP 40098)]
[New Thread 0x7ffff009e640 (LWP 40099)]
[New Thread 0x7fffef89d640 (LWP 40100)]
[New Thread 0x7fffef09c640 (LWP 40101)]
[New Thread 0x7fffee73c640 (LWP 40102)]
[New Thread 0x7fffedf3b640 (LWP 40103)]
[New Thread 0x7fffed73a640 (LWP 40104)]
[New Thread 0x7fffecf39640 (LWP 40105)]
[New Thread 0x7fffec738640 (LWP 40106)]
[New Thread 0x7fffec5a6640 (LWP 40107)]
[New Thread 0x7fffebda5640 (LWP 40108)]
[New Thread 0x7fffeb5a4640 (LWP 40109)]
[New Thread 0x7fffec62c640 (LWP 40110)]
[New Thread 0x7fffea876640 (LWP 40111)]
[New Thread 0x7fffea075640 (LWP 40112)]
[New Thread 0x7fffe9073640 (LWP 40114)]
[New Thread 0x7fffe9874640 (LWP 40113)]
[New Thread 0x7fffe8812640 (LWP 40115)]
[New Thread 0x7fffe7ef5640 (LWP 40116)]
[Thread 0x7fffebda5640 (LWP 40108) exited]
[New Thread 0x7fffebda5640 (LWP 40117)]
[New Thread 0x7fffe76c7640 (LWP 40118)]
[New Thread 0x7fffe6e99640 (LWP 40119)]
[New Thread 0x7fffe6698640 (LWP 40120)]
[New Thread 0x7fffe5e97640 (LWP 40123)]
[New Thread 0x7fffe5696640 (LWP 40124)]
[Detaching after fork from child process 40125]
[New Thread 0x7fffe4e95640 (LWP 40126)]
[New Thread 0x7fffe4616640 (LWP 40130)]
[New Thread 0x7fffe3e15640 (LWP 40131)]
[Detaching after fork from child process 40132]
[New Thread 0x7fffe35d3640 (LWP 40136)]
[40077:0220/184814.112577:FATAL:gpu_data_manager_impl_private.cc(439)] GPU process isn't usable. Goodbye.

Thread 6 "Chrome_IOThread" received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0x7fffef89d640 (LWP 40100)]
0x000055555921bea4 in ?? ()
aumouvantsillage commented 2 years ago

I hope developers may conclude, that more recent versions may be on wrong direction. Hopefully Sozi will be fixed!

Sozi is just a web application that runs in a special-purpose web browser via electron. What you observe is not the result of a change in Sozi itself, but probably a compatibility problem between recent versions of electron and your operating system.

I don't believe Sozi is developed in the "wrong direction". I don't see how the changes made in Sozi since version 19.04 could relate to this issue, except an upgrade of electron.

In my tests, Sozi 22.02.20 ran correctly in Debian 11, Ubuntu 20.04, Fedora 35 and Windows 10. I have not tried openSUSE or ArchLinux yet but I will do that as soon as possible.

edmundlaugasson commented 2 years ago

My bad - certainly I don't know, what's under the hood. Just hard to determine, what can I do to get Sozi working. As there are people, who's work rely on Sozi, then it is quite challenging, if suddenly it does not work.

aumouvantsillage commented 2 years ago

As there are people, who's work rely on Sozi, then it is quite challenging, if suddenly it does not work.

I can totally understand that, and I usually try to do my best to fix critical issues quickly. But I cannot fix issues until I am aware of them :smile:

Based on your tests, it seems that Sozi has had launching issues since may 2020 (the publication date of Sozi 20.05), but as far as I remember, nobody reported the issue before now.

edmundlaugasson commented 2 years ago

Currently installed electron versions:

I haven't installed them. These have been installed as dependencies by other programs. Do not know, which version will be used, when Sozi is launching or how to define, which version should be used. Interesting, that old 19.04.22 of Sozi version worked with these new electron versions. I know, that electron is famous and perhaps good framework to use. As we see, quite complicated framework as easily can it be broken. If there could be possible to use some kind of more stable, independent framework (or whatever you call it), it would be very much appreciated.

aumouvantsillage commented 2 years ago

Currently installed electron versions

The current official Sozi package is based on electron 9.4.4. Normally, electron comes bundled with Sozi, but I think that the ArchLinux User Repository provides it separately.

A quick look at the history shows the following evolution:

Sozi version Electron version
19.04 3.02
20.05 6.1.4
21.02 9.2.1
21.08 and later 9.4.4

If there could be possible to use some kind of more stable, independent framework (or whatever you call it), it would be very much appreciated.

I have already considered moving away from Electron for various reasons. There are alternatives, but they also have their shortcomings.

At this point, I will investigate this specific issue with Electron 9.4.4. There are chances that it has already been reported for other Electron-based applications, and hopefully fixed in a more recent version of Electron.

aumouvantsillage commented 2 years ago

For reference, here is a discussion about a similar issue for several Electron applications in OpenSUSE Tumbleweed.

edmundlaugasson commented 2 years ago

Thank you for comprehensive feedback! I mentioned current discussion also in Arch User Repository (AUR) close to Sozi package. Let's hope, that if Electron is not bundled there, it will be. If Electron is bundled with Sozi, then any version of Sozi should run regardless of installed Electron version. Still there might some conflict, that is hard to determine - this could be, why still Sozi won't start in Arch. Just trying to figure out, what keeps back Sozi, that it won't start - even I downloaded directly from Sozi GitHub (where Electron should be bundled), unpacked and started manually from CLI.

I have already considered moving away from Electron for various reasons. There are alternatives, but they also have their shortcomings.

You know better. I hope you will find a way, that do not overwhelm you and has less issues than currently with Electron. Just quick look at https://alternativeto.net/software/electron/?license=opensource&platform=linux shows 23 alternatives to Electron (some of them may be discontinued) - hopefully there is at least one, that is more suitable than Electron. Looks like even Electron stable is developed quite rapidly - hard to keep pace with it.

aumouvantsillage commented 2 years ago

I have successfully reproduced the issue in OpenSUSE Tumbleweed running in a virtual machine.

Commit 8c32c22 activates an option of Electron that fixes the issue for me in OpenSUSE. With this fix, the AppImage also launches correctly in Manjaro, so I would expect it to run in ArchLinux as well.

You will find updated packages at https://github.com/sozi-projects/Sozi/releases/tag/v22.02.23-beta At the moment, I am still tweaking the new package build process, so I don't provide tar bundles for Linux.

aumouvantsillage commented 2 years ago

@edmundlaugasson I have added an ArchLinux package (with extension .pacman) to release 22.02.23. It installs and runs correctly in a Manjaro VM.

edmundlaugasson commented 2 years ago

Thank you, I appreciate your efforts! Yes - 22.02.23 beta works also in Arch Linux. Although using EndeavourOS with KDE, if to be precise but it is very close to Arch itself. You know better, whether such disabling does affect graphical perfomance and/or appearance and on which extent, e.g. correct color rendering. Just wondering, why such issue suddenly appeared at all.

aumouvantsillage commented 2 years ago

You know better, whether such disabling does affect graphical performance and/or appearance

My understanding is that it only disables a security feature. It should not affect performance or appearance.

I don't have enough expertise in the architecture of Electron to measure the risk when disabling the sandbox. And since some distributions can run Electron applications with the sandbox enabled, it is possible that a safer solution exists.

RafaelLinux commented 2 years ago

It seems it is solved in test version Sozi-22.2.23-1645647480, no crash.

edmundlaugasson commented 2 years ago

Sounds like this works also with current version: sozi --disable-gpu-sandbox Sounds like Chromium CLI parameter. Perhaps this issue is even not an Electron issue or possibly issue between Electron and bundled special purposed Chromium. Perhaps it gives some ideas, when to look back to Sozi 19.04.22 version (this worked without GPU sandbox disabling) and what then changed with that bundled special purposed Chromium...

edmundlaugasson commented 2 years ago

Still pre-release and no release? Reported issue still persist with current release but issue closed without any commit or release? Almost a month passed since the pre-release.

aumouvantsillage commented 2 years ago

Reported issue still persist with current release but issue closed without any commit or release?

Let me tell you that I find your comment a little unfair.

With GitHub, there is an option to close an issue as soon as a fix is committed. Many projects use it, including Sozi, which results in issues being closed even if no release has been published. I could have used this option in commit 8c32c22 but I chose not to. I published a pre-release and I waited for feedback before closing the issue.

After one month without additional info, I consider that this issue can be closed. Without any other bug report specific to the latest pre-release, I will also promote it to an official release.

RafaelLinux commented 2 years ago

I summarise the state of the problem in my equipment as of today: Version previous to Sozi-22.2.23-1645647480 crash, regardless of whether it is RPM or AppImage version. I must add that install Sozi-22.2.23-1645647480 RPM version give a warning about NSS file is missing.

I therefore understand that, as the user who opened the case, it should not be considered closed. As suggested in the thread, I tested the beta version and reported that it worked. I was hoping that the beta had moved to a production version, but it hasn't, so I will try to reopen the issue, as edmundlaugasson is right: the stable version still doesn't work.

UPDATE: In github user can't change thread status, so I expect admin do it, thanks

edmundlaugasson commented 2 years ago

As I mentioned already 24 days ago, in my distro the Sozi-22.2.23-1645647480.AppImage works. Used for quick testing. I guess pacman version will also as I have that package manager. But I don't want manually install packages as Sozi is available also via package manager. If the wait period is one month then it is understandable, although quite long to wait new, fixed version.

aumouvantsillage commented 2 years ago

I will try to reopen the issue, as edmundlaugasson is right: the stable version still doesn't work.

As I tried to explain in my previous comment, closing issues and releasing a stable version are separate processes. The fact that an issue is closed does not always mean that the fix is published in a stable release. Different projects have different rules for managing issues and releases.

My usual process is:

  1. Push a fix to the source repository.
  2. Mark the issue with the label "Done".
  3. Publish a pre-release.
  4. Close the issue if the fix is confirmed.
  5. Repeat steps 1 to 4 for another issue.
  6. Publish a stable release.

But it is not a "formal" process. Sometimes, I close an issue immediately in step 1. Often, users decide to close their own issues after step 3. Because for many people, there is no reason to keep an issue open when a fix has been published, even as a pre-release.

If the wait period is one month then it is understandable, although quite long to wait new, fixed version.

Please remember that Sozi is a side project that I develop mostly alone in my spare time. I have a job and a family, so I work on Sozi when I can and when I want. I have no obligation to fix issues, provide free support, or comply with a specific process or schedule. So I think that you should adjust your expectations to what I can provide, and not the other way round.

edmundlaugasson commented 2 years ago

I just would like to say, that if there is no issues, then possibly it is good time to make a release from pre-release. Certainly you decide. Just an idea due to fact, that issue was closed. I know all this (you repeatedly remind this) and nobody don't want irritate you. It is just regular communication and no hard feelings.

aumouvantsillage commented 2 years ago

I know all this (you repeatedly remind this) and nobody don't want irritate you. It is just regular communication and no hard feelings.

OK. It is not always easy to tell whether a message is a question, a factual statement or a complaint.

Since I proposed to promote the current pre-release as the new stable release, the purpose of the next two messages by @RafaelLinux and you was not clear to me.

aumouvantsillage commented 2 years ago

FYI, I have published Sozi 22.03.25 as the new official release.

RafaelLinux commented 2 years ago

FYI, I have published Sozi 22.03.25 as the new official release.

Yes, it works (I tried AppImage version, not RPM one). Thank for all your work!!!