Description of problem:
Gnome-Software randomly crashes in background very often
Version-Release number of selected component:
cmdline: /usr/bin/gnome-software --gapplication-service
runlevel: N 5
Thread no. 1 (8 frames)
#0 gs_flatpak_get_installation at ../plugins/flatpak/gs-flatpak.c:2931
#1 _build_transaction at ../plugins/flatpak/gs-plugin-flatpak.c:415
#2 gs_plugin_download at ../plugins/flatpak/gs-plugin-flatpak.c:468
#3 gs_plugin_loader_call_vfunc at ../lib/gs-plugin-loader.c:629
#4 gs_plugin_loader_run_results at ../lib/gs-plugin-loader.c:1084
#5 gs_plugin_loader_process_thread_cb at ../lib/gs-plugin-loader.c:3013
#6 g_task_thread_pool_thread at ../gio/gtask.c:1410
#8 g_thread_proxy at ../glib/gthread.c:805
Created attachment 1626738 [details]
Created attachment 1626739 [details]
Created attachment 1626740 [details]
Created attachment 1626741 [details]
Created attachment 1626742 [details]
Created attachment 1626743 [details]
Created attachment 1626744 [details]
Created attachment 1626745 [details]
Created attachment 1626746 [details]
Created attachment 1626747 [details]
Created attachment 1626748 [details]
Created attachment 1626749 [details]
Since a recent update of gnome-software, it crashes very often while running in background, often immediately after boot. This happens on multiple different systems by me. See also https://retrace.fedoraproject.org/faf/reports/2710719/
I haven't tested a clean install, but at the current state, this probably violates
"There must be no [...] crash notifications [...] at first login after a default install of a release-blocking desktop."
Likely cause: https://gitlab.gnome.org/GNOME/gnome-software/commit/ba103a6cbb27a4e01524a5c27f76266613f87936
Actually, it looks like that commit fixes the issue, but it hasn't made it to Fedora 31, yet.
FWIW, I haven't seen this when operating just on RPMs. The traceback references flatpak, so I installed flathub repo into a clean F31 Workstation installation in VM, installed a few apps and rebooted several times, but I don't see any crash. It would be nice to figure out a more specific reproducer.
I'll try to find a reproducer on a clean system, but FWIW, on one affected system I've installed a lot of Flatpak apps, so that might be related:
$ flatpak list
Name Application ID Version Zweig Ursprung Installation
Foliate com.github.johnfactotum.Foliate 1.5.3 stable flathub system
default org.freedesktop.Platform.GL.default 1.6 gnome user
default org.freedesktop.Platform.GL.default 19.08 gnome-nightly system
default org.freedesktop.Platform.GL.default 19.08 gnome-nightly user
default org.freedesktop.Platform.GL.default 19.08beta gnome-nightly system
default org.freedesktop.Platform.GL.default 19.08beta gnome-nightly user
Adwaita icon theme org.freedesktop.Platform.Icontheme.Adwaita 1.0 flathub system
Adwaita icon theme org.freedesktop.Platform.Icontheme.Adwaita 1.0 gnome user
Intel VAAPI Driver org.freedesktop.Platform.VAAPI.Intel 1.6 flathub system
Intel VAAPI Driver org.freedesktop.Platform.VAAPI.Intel 1.6 gnome user
Intel org.freedesktop.Platform.VAAPI.Intel 18.08 flathub system
Intel org.freedesktop.Platform.VAAPI.Intel 19.08 gnome-nightly system
Intel org.freedesktop.Platform.VAAPI.Intel 19.08 gnome-nightly user
Intel org.freedesktop.Platform.VAAPI.Intel 19.08beta gnome-nightly system
Intel org.freedesktop.Platform.VAAPI.Intel 19.08beta gnome-nightly user
FFmpeg extension org.freedesktop.Platform.ffmpeg 1.6 flathub system
FFmpeg extension org.freedesktop.Platform.ffmpeg 1.6 gnome user
ffmpeg-html5 org.freedesktop.Platform.ffmpeg-html5 19.08beta gnome-nightly system
ffmpeg-html5 org.freedesktop.Platform.ffmpeg-html5 19.08beta gnome-nightly user
html5-codecs org.freedesktop.Platform.html5-codecs 18.08 flathub system
GNU Image Manipulation Program org.gimp.GIMP 2.10.12 stable flathub system
Builder org.gnome.Builder 3.34.0 master gnome-apps-nightly system
GNOME Application Platform version 3.20 org.gnome.Platform 3.20 gnome user
GNOME Application Platform version 3.24 org.gnome.Platform 3.24 gnome user
GNOME Application Platform version 3.28 org.gnome.Platform 3.28 flathub system
GNOME Application Platform version 3.30 org.gnome.Platform 3.30 flathub system
GNOME Application Platform version 3.32 org.gnome.Platform 3.32 flathub system
GNOME Application Platform version 3.34 org.gnome.Platform 3.34 flathub system
GNOME Application Platform version master org.gnome.Platform master gnome-nightly system
Rezepte org.gnome.Recipes 2.0.2 stable flathub system
GNOME Software Development Kit version 3.32 org.gnome.Sdk 3.32 flathub system
GNOME Software Development Kit version master org.gnome.Sdk master gnome-nightly system
GNOME Software Development Kit version master org.gnome.Sdk master gnome-nightly user
Docs org.gnome.Sdk.Docs 3.32 flathub user
Docs org.gnome.Sdk.Docs master gnome-nightly user
Inkscape org.inkscape.Inkscape 0.92.4 stable flathub system
Looking at the list, this might be related to having the same application/runtime installed both system-wide and per-user.
I couldn't reproduce that easily with just installing a flatpak in --user and --system. It likely has to do with having an update available or something like that, which I have no idea how to reproduce easily as you need to install old versions on purpose. Or can someone who understands this code better than me analyze https://gitlab.gnome.org/GNOME/gnome-software/blob/3e1fe203b40248f571be2a804027acd8e23dc54e/plugins/flatpak/gs-plugin-flatpak.c#L440 and post under which conditions the variable `flatpak` will be NULL in line 468?
Discussed at 2019-10-17 Fedora 31 go/no-go meeting, acting as a blocker review meeting: https://meetbot-raw.fedoraproject.org/fedora-meeting-1/2019-10-17/f31-final-go_no_go-meeting.2019-10-17-17.00.html . As we don't really have sufficient information on what causes this bug yet, we agreed to defer decision on blocker status until we have more information.
*** Bug 1763024 has been marked as a duplicate of this bug. ***
The conditions for the crash are according to Will Thompson:
* at least one Flatpak has an available update
* at least one non-Flatpak GsApp (e.g. an RPM) has an available update
* the last GsApp in the list happens to not be a Flatpak – as far as I know this is non-deterministic.
I've backported the fix to gnome-software-3.34.1-6.fc31 (untested by me, but hopefully works).
Proposing as a FE as it's probably a good idea to pull this in through the freeze to avoid the updates process crashing.
FEDORA-2019-6575577db7 has been submitted as an update to Fedora 31. https://bodhi.fedoraproject.org/updates/FEDORA-2019-6575577db7
(In reply to Jonathan Haas from comment #22)
> The conditions for the crash are according to Will Thompson:
> * at least one Flatpak has an available update
> * at least one non-Flatpak GsApp (e.g. an RPM) has an available update
> * the last GsApp in the list happens to not be a Flatpak – as far as I know
> this is non-deterministic.
I tried to reproduce this. On F31 VM, I installed ScummVM from Flathub using GNOME Software, and then downgraded it to an older version  using:
$ sudo flatpak update --commit=36c8229674e0180bf2137b58e14764a1493a5d671a95b6566ab772bba8d63c08 org.scummvm.ScummVM
Then I enabled updates-testing, which made a lot of RPM updates available. Rebooted, made GNOME Software recheck the updates, rebooted again and few more times still, but no crash occurred. Updated the RPMs, downgraded some of them, repeated the whole cycle, no crash. So unfortunately I can't verify the fix because I can't reproduce the error.
since we don't have any flatpaks installed in the live env or out of the box I'm not sure the FE case for this is super strong, but I think I'm a weak +1 FE just to make sure it's fixed for release if we test it and pull it in soon.
I can't reproduce the issue anymore after installing that updated rpm. Before it happened very reliably shortly after every login.
gnome-software-3.34.1-6.fc31 has been pushed to the Fedora 31 testing repository. If problems still persist, please make note of it in this bug report.
See https://fedoraproject.org/wiki/QA:Updates_Testing for
instructions on how to install test updates.
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2019-6575577db7
I’m +1 FE for this.
That's +3 FE, so setting acceptedFE.
This was included in the RC 1.3 build and it appears to have fixed the issue for me and several others according to Bodhi, so I'd say that the blocker status of this is largely academic at this point.
That said, I'll vote -1 blocker on the grounds that while it's not a great user experience, it's also not actually impacting functionality and therefore would probably fail the "last blocker at Go/No-Go" test.
setting to VERIFIED per #c32 (and bodhi comments).
gnome-software-3.34.1-6.fc31 has been pushed to the Fedora 31 stable repository. If problems still persist, please make note of it in this bug report.
*** Bug 1764554 has been marked as a duplicate of this bug. ***