The simplest workaround seems to be to use Ctrl-C when apt update hangs at the end. It's already done most of the work, and this just aborts the running of appstreamcli at the end. You can then go ahead and update any binary packages built from the appstream source package (ie any of appstream appstream-doc appstream-index gir1.2-appstream libappstream- dev libappstream3 libappstreamqt-dev libappstreamqt1 that are already installed). The use of appstreamcli in the postinst shouldn't hang because the new versions of appstreamcli and libappstream.so.3 will already be in place.
However, using Ctrl-C is possible only when using the command line. I'm not sure what happens if someone is using Synaptic or Gnome Software. I assume it would be necessary to use System Monitor to kill off appstreamcli. I'm concerned that we could see breakage in a very large number of Xenial installations, all of which would require manual intervention to get them unstuck. The fact that this is happening now, when it hasn't been reported in the past 3 years, must be due to a subtle change in the execution environment, maybe due to updates in other shared libraries that appstreamcli uses. The problem is a result of reading uninitialized memory, and in the past it must have been pure luck that the memory always contained zeroes. -- You received this bug notification because you are a member of Ubuntu Bugs, which is subscribed to Ubuntu. https://bugs.launchpad.net/bugs/1579712 Title: Refresh hangs indefinitely, appstreamcli using 100% CPU To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/appstream/+bug/1579712/+subscriptions -- ubuntu-bugs mailing list ubuntu-bugs@lists.ubuntu.com https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs