[Bug 1579712] Re: Refresh hangs indefinitely, appstreamcli using 100% CPU

Matthias Klumpp matthias at tenstral.net
Fri May 20 03:52:11 UTC 2016


I made the summary less technical, so maybe fewer duplicates of this get reported when people go through the bug list. I also added instructions on how to fix this immediately without removing packages or moving config files around to the bug description, so people who find this bug don't need to read the whole thread to get their machines working properly again.
Cheers,
    Matthias


** Summary changed:

- Refresh hangs due to strdup on non-NULL terminated string
+ Refresh hangs indefinitely, appstreamcli using 100% CPU

** Description changed:

  [Impact]
  
-  * The cache refresh is blocked on a strdup on a non-NULL-terminated string in some very rare occasions (very rare because this bug is present for almost 3y without a single report).
-  * Fixing this bug resolves the issue for people who might experience it.
-  * See https://github.com/ximion/appstream/issues/35 for details.
+  * The cache refresh is blocked on a strdup on a non-NULL-terminated string in some very rare occasions (very rare because this bug is present for almost 3y without a single report).
+  * Fixing this bug resolves the issue for people who might experience it.
+  * See https://github.com/ximion/appstream/issues/35 for details.
  
  [Test Case 1]
  
-  * Run `sudo appstreamcli refresh --force`
-  * The AppStream cache should be updated, no change in behavior should be seen.
+  * Run `sudo appstreamcli refresh --force`
+  * The AppStream cache should be updated, no change in behavior should be seen.
  
  [Test Case 2]
  
-  * In case you were experiencing the almost-infinite hang when running
+  * In case you were experiencing the almost-infinite hang when running
  `sudo appstreamcli refresh --force`, this issue should be fixed with the
  SRU.
  
  [Regression Potential]
  
-  * Very low, since this only fixes the decompression code. There should
+  * Very low, since this only fixes the decompression code. There should
  be no sideeffects of that (given that the patch itself doesn't break
  anything, which it shouldn't, since it has been tested upstream for a
  while)
  
  [Other Info]
  
-  * This fix has been applied upstream: https://github.com/ximion/appstream/commit/f33c520c37e2ba51d92402220250b8d501a2bf43
-  * A smaller version of the patch (one-liner) is available, at the expense of not having reduced memory usage: https://github.com/ximion/appstream/commit/378941787d3584b3eb31a6ebe40e0aacc10e180a
+  * This fix has been applied upstream: https://github.com/ximion/appstream/commit/f33c520c37e2ba51d92402220250b8d501a2bf43
+  * A smaller version of the patch (one-liner) is available, at the expense of not having reduced memory usage: https://github.com/ximion/appstream/commit/378941787d3584b3eb31a6ebe40e0aacc10e180a
+ 
+ ####
+ 
+ /!\ Installing the bugfix from xenial-proposed, without going through APT:
+ To install the fixed packages manually, please execute the following commands (for amd64, adjust URLs for other architectures):
+ 
+ ```
+ cd /tmp && mkdir asfix
+ cd asfix
+ wget https://launchpad.net/ubuntu/+archive/primary/+files/appstream_0.9.4-1ubuntu1_amd64.deb
+ wget https://launchpad.net/ubuntu/+archive/primary/+files/libappstream3_0.9.4-1ubuntu1_amd64.deb
+ sudo dpkg -i libappstream3*.deb
+ sudo dpkg -i appstream*.deb
+ ```

-- 
You received this bug notification because you are a member of Ubuntu
Sponsors Team, which is subscribed to the bug report.
https://bugs.launchpad.net/bugs/1579712

Title:
  Refresh hangs indefinitely, appstreamcli using 100% CPU

Status in appstream package in Ubuntu:
  Fix Released
Status in appstream source package in Xenial:
  Fix Committed

Bug description:
  [Impact]

   * The cache refresh is blocked on a strdup on a non-NULL-terminated string in some very rare occasions (very rare because this bug is present for almost 3y without a single report).
   * Fixing this bug resolves the issue for people who might experience it.
   * See https://github.com/ximion/appstream/issues/35 for details.

  [Test Case 1]

   * Run `sudo appstreamcli refresh --force`
   * The AppStream cache should be updated, no change in behavior should be seen.

  [Test Case 2]

   * In case you were experiencing the almost-infinite hang when running
  `sudo appstreamcli refresh --force`, this issue should be fixed with
  the SRU.

  [Regression Potential]

   * Very low, since this only fixes the decompression code. There
  should be no sideeffects of that (given that the patch itself doesn't
  break anything, which it shouldn't, since it has been tested upstream
  for a while)

  [Other Info]

   * This fix has been applied upstream: https://github.com/ximion/appstream/commit/f33c520c37e2ba51d92402220250b8d501a2bf43
   * A smaller version of the patch (one-liner) is available, at the expense of not having reduced memory usage: https://github.com/ximion/appstream/commit/378941787d3584b3eb31a6ebe40e0aacc10e180a

  ####

  /!\ Installing the bugfix from xenial-proposed, without going through APT:
  To install the fixed packages manually, please execute the following commands (for amd64, adjust URLs for other architectures):

  ```
  cd /tmp && mkdir asfix
  cd asfix
  wget https://launchpad.net/ubuntu/+archive/primary/+files/appstream_0.9.4-1ubuntu1_amd64.deb
  wget https://launchpad.net/ubuntu/+archive/primary/+files/libappstream3_0.9.4-1ubuntu1_amd64.deb
  sudo dpkg -i libappstream3*.deb
  sudo dpkg -i appstream*.deb
  ```

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/appstream/+bug/1579712/+subscriptions



More information about the Ubuntu-sponsors mailing list