Using some glib functions within multiprocessing from a threaded app sometimes causes 100% CPU utilization

Bug #554005 reported by Rick Spencer
684
This bug affects 180 people
Affects Status Importance Assigned to Milestone
desktopcouch (Ubuntu)
Invalid
High
Unassigned
Lucid
Invalid
High
Unassigned
gwibber (Ubuntu)
Fix Released
High
Unassigned
Lucid
Fix Released
High
Unassigned
libgnome-keyring (Ubuntu)
Invalid
Medium
Unassigned
Lucid
Won't Fix
High
Unassigned

Bug Description

1. set up Gwibber accounts with passwords stored in the keyring
2. restart your computer
3. wait for gwibber to autostart

Eventually gwibber-service will hit 100% CPU utilization. desktopcouch-service also sometimes suffers from this.

More details to be added soon.

ProblemType: Bug
DistroRelease: Ubuntu 10.04
Package: libgnome-keyring0 2.30.0-0ubuntu2
ProcVersionSignature: Ubuntu 2.6.32-18.27-generic 2.6.32.10+drm33.1
Uname: Linux 2.6.32-18-generic i686
Architecture: i386
Date: Fri Apr 2 08:02:03 2010
InstallationMedia: Ubuntu 9.10 "Karmic Koala" - Release i386 (20091028.5)
ProcEnviron:
 LANG=en_US.utf8
 SHELL=/bin/bash
SourcePackage: libgnome-keyring

Related branches

Revision history for this message
Rick Spencer (rick-rickspencer3) wrote :
Changed in libgnome-keyring (Ubuntu):
importance: Undecided → High
assignee: nobody → Canonical Desktop Team (canonical-desktop-team)
Steve Langasek (vorlon)
Changed in gwibber (Ubuntu Lucid):
importance: Undecided → High
Changed in desktopcouch (Ubuntu Lucid):
importance: Undecided → High
Revision history for this message
Mike (bild85) wrote :

I was going to comment in bug #551326, which is a dupe of bug #530605, but as Brendan_P comments in the first bug, this doesn't seem related to samba or gvfs. This report seems to more accurately match my experience. Here's what I did to cause 100% CPU utilisation on Lucid:

Click the envelope icon and choose Broadcast
Click Close (didn't add any accounts at all)
The Gwibber 2.29.93 main window opened.
Do nothing; just click Close again.
Wait a few minutes and the CPU went up to 100%.
System Monitor reports the desktopcouch-service is taking most CPU

Revision history for this message
Philipp Wolfer (phw) wrote :

Same experience here with gwibber-service. I have only one identi.ca account set up, gwibber-service will use 100% CPU as soon as it is running. Can I provide you with useful information somehow or has the problem already been identified?

Revision history for this message
Felix (apoapo) wrote :

Same here with latest Lucid Gnome Desktop. Only 1 Twitter account added. Timeline wont update also!

gwibber-service is eating up 100% CPU.
This starts automatically after some time or when i try to reload the Twitter timeline manually in gwibber.

Please let me know how to help.

Revision history for this message
Rick Spencer (rick-rickspencer3) wrote :

@apo - I think dobey tracked the problem down to some thread locking in gwibber-service, and that @kenvandine is re-working the code. Any help testing when they are available and providing bug reports and telemetry if there are any regressions would be really appreciated.

Changed in gwibber (Ubuntu Lucid):
assignee: nobody → Ken VanDine (ken-vandine)
Revision history for this message
Nicolás Abel Carbone (nicocarbone) wrote :

I am also having this problem. I am using Ubuntu Lucid Lynx AMD64.

Revision history for this message
Soul-Sing (soulzing) wrote :

confirmed

Revision history for this message
Samúel Jón Gunnarsson (sammi) wrote :

I can also confirm this problem. I'm running Ubuntu 10.04, x86_64 AMD, kernel 2.6.32-19, gnome 2.30.0

Revision history for this message
louis (louis-blacksec) wrote :

I'm running also Ubuntu 10.04 on Linux fuckup 2.6.32-19-generic #28-Ubuntu SMP Wed Mar 31 17:46:20 UTC 2010 i686 GNU/Linux on a Asus EEEPC and can confirm the problem

Revision history for this message
ichudov (igor-chudov) wrote :

I have the same problem, which ruins my battery life. While this is being worked on, how can I disable this gwibber-service?

thanks

Revision history for this message
Björn Seifert (bjoern.seifert) wrote :

@ichudov:
I have the line
*/2 * * * * /usr/bin/killall -q gwibber-service
in my crontab to kill it every 2mins.

Revision history for this message
Travis B. Hartwell (nafai) wrote :

I'm working on this today since kenvandine is out.

It has been discovered that accessing gnomekeyring from a thread is causing these CPU problems.

What I am going to do is move the calls to gnomekeyring to before
gwibber-service starts threads and store that data in mlock()'d
memory. Then, replace the previous calls to gnomekeyring to calls to
access that mlock()'d memory.

I hope to have a branch pushed by end of day for kenvandine to
review.

James Westby (james-w)
summary: - accessing keyring from python threads sometimes causes 100% CPU
- utilization
+ Using some glib functions within multiprocessing from a threaded app
+ sometimes causes 100% CPU utilization
Revision history for this message
Aaron (armahillo) wrote :

This bug has affected me -- amd_64, beta 2 of Lucid.

My cpu graph was pegged ALMOST to the top constantly; I thought it was npviewer-bin, since that used to be a monster. After running Top, I found that Gwibber-service was using 85-95% of my CPU cycles. (single core, 3GHz P4)

I had one Twitter account set up in Broadcast accounts (assuming that's gwibber?). That was it, though.

After killing gwibber-service, things have returned to normal.

Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gwibber - 2.29.95-0ubuntu1

---------------
gwibber (2.29.95-0ubuntu1) lucid; urgency=low

  * New upstream release
    - Fixed threadlock in keyring call which made gwibber-service
      utilize 100% of a CPU (LP: #554005)
    - Handle parsing of bad message content better
    - Fixed color handling regression in gwibber-accounts
    - Respect full name preference in notification bubbles
    - Reset refresh interval to pick up changes in settings (LP: #487266)
 -- Ken VanDine <email address hidden> Thu, 08 Apr 2010 16:36:07 -0400

Changed in gwibber (Ubuntu Lucid):
status: New → Fix Released
Revision history for this message
Martin Pitt (pitti) wrote :

Since this has been worked around in gwibber, the remaining tasks aren't RC any more.

Changed in libgnome-keyring (Ubuntu Lucid):
assignee: Canonical Desktop Team (canonical-desktop-team) → nobody
status: New → Won't Fix
Changed in libgnome-keyring (Ubuntu):
status: New → Triaged
importance: High → Medium
Changed in desktopcouch (Ubuntu Lucid):
status: New → Invalid
Revision history for this message
James Westby (james-w) wrote :

I'm pretty sure this isn't a libgnome-keyring bug anyway.

Thanks,

James

Revision history for this message
Martin Pitt (pitti) wrote :

Right, true that. Presumably it's a problem with dbus-glib in threaded programs.

Changed in libgnome-keyring (Ubuntu):
assignee: Canonical Desktop Team (canonical-desktop-team) → nobody
status: Triaged → Invalid
Revision history for this message
Daniel James (daniel-netbreeze) wrote :

I'm still having an issue with gwibber-service frequently using 100% on all cpus for a few seconds. Is this bug back?

Revision history for this message
Daniel James (daniel-netbreeze) wrote :

Sorry for double post. I'm using version (2.30.0.1-0ubuntu3)

Revision history for this message
Timur Irmatov (irmatov) wrote :

I am also having a problem with gwibber-service consuming 100% of CPU. Also, I see two instances of this process in 'top' listing. gwibber and gwibber service packages' versions are 2.30.1-0ubuntu1

Changed in gwibber (Ubuntu Lucid):
status: Fix Released → New
Revision history for this message
Omer Akram (om26er) wrote :

This particular bug is fixed but if you are facing any problems please report a new bug.

Changed in gwibber (Ubuntu Lucid):
status: New → Fix Released
Revision history for this message
FokkerCharlie (charlie-andrews) wrote :

I must be missing something. I am seeing the symptoms of this bug (high CPU usage by gwibber-service after it has been running a while, but the version of gwibber-service installed is later than the version mentioned above as including the fix.

$ sudo apt-cache policy gwibber-service
gwibber-service:
  Installed: 2.32.2-0ubuntu2

Running Maverick 64-bit desktop.

Revision history for this message
Jeff Gosden (jeff-jb-interactive) wrote :

Latest update from PPA (daily) is maxing out CPU to 100% (gwibber-service)

gwibber-service:
  Installed: 2.91.3~bzr942-0ubuntu1~daily1~lucid
  Candidate: 2.91.3~bzr942-0ubuntu1~daily1~lucid
  Version table:
 *** 2.91.3~bzr942-0ubuntu1~daily1~lucid 0
        500 http://ppa.launchpad.net/gwibber-daily/ppa/ubuntu/ lucid/main Packages
        100 /var/lib/dpkg/status
     2.30.3-0ubuntu2 0
        500 http://gb.archive.ubuntu.com/ubuntu/ lucid-updates/main Packages
     2.30.0.1-0ubuntu1 0
        500 http://gb.archive.ubuntu.com/ubuntu/ lucid/main Packages

Revision history for this message
ski (skibrianski) wrote :

Definitely not fixed for me on ubuntu 10.04 LTS, using gwibber 2.30.3-0ubuntu2. 64-bit.

Revision history for this message
ChrisJ (spammichvoll11elf) wrote :

Definitely not fixed on
gwibber-service 2.32.2-0ubuntu2
using Ubuntu 10.10 x64

About 90% CPU usage after long runtime an several standbys.

Will this bug be reopened or will there be a new one?

Changed in gwibber (Ubuntu Lucid):
assignee: Ken VanDine (ken-vandine) → nobody
Changed in gwibber (Ubuntu):
assignee: Ken VanDine (ken-vandine) → nobody
Revision history for this message
JF Caringi (jfcaringi) wrote :

Same problem, I've installed gwibber 2.32.2-0ubuntu2; gwibber-service 2.32.2-0ubuntu2; libgwibber0 0.0.6-0ubuntu1 on Maverick (10.10) 32bit.

Revision history for this message
Scott Donnelly (scotty-d) wrote :

I'm also experiencing this problem.

gwibber-service:
  Installed: 2.32.2-0ubuntu2
  Candidate: 2.32.2-0ubuntu2
  Version table:
 *** 2.32.2-0ubuntu2 0
        500 http://gb.archive.ubuntu.com/ubuntu/ maverick-updates/main amd64 Packages
        100 /var/lib/dpkg/status
     2.32.0.1-0ubuntu1 0
        500 http://gb.archive.ubuntu.com/ubuntu/ maverick/main amd64 Packages

Revision history for this message
Aaron Roydhouse (aaron-roydhouse) wrote :

I can confirm Gwibber still unusably slow with high CPU use on 11.10 with Gwibber 3.2.1.

(OT OTT rant: In fact gwibber-service has made gwibber unusably slow ever since it was added to Ubuntu. Really, if it still this bad after over two years in the distribution is there any point persisting with trying to fix it? It's flaw seem pretty fundamentally 'baked into' the design. It's only virtue is telepathy integration, is there another Twitter client to which we can add that?

Gwibber doesn't even seem well maintained. It doesn't have any man pages or documentation (try clicking 'Get Help' on the 'Help' menu). It can't tell you its own command line options. It does have regular releases, but mostly rearranging deck chairs, nothing that addresses the fundamental performance problems and resulting unresponsive UI. The project site hasn't has a news/blog entry since 2010 (http://gwibber.com/blog/). The last launchpad annoucement was 2009 (https://launchpad.net/gwibber/+announcements). Really few of properties of a healthy open-source project.)

Revision history for this message
dobey (dobey) wrote :

Aaron, perhaps you should actually try the newer releases before making such unfounded statements of negativity that do nothing to help either Gwibber, or Ubuntu.

Launchpad announcements is hardly a metric for how well something is maintained. Simply because the previous maintainer left a lot of fruit hanging, also doesn't mean much. It would be nice for the blog to be updated, sure. But again, hardly a reasonable metric for what the code is like. Also, Gwibber is not a Twitter client, nor I think does it integrate with Telepathy. It is on the other hand, meant to provide an integrated platform into Ubuntu, for integrating with many services like Twitter. Also, the performance is much better in the version which ships in Ubuntu 12.04.

So please don't go posting OT rants in bug comments. They are considered spam and likely will be asked to be removed in the future.

Revision history for this message
Stu (stu-axon) wrote :

Confirming this - it only started affecting me since upgrading to 12.04.

When I login lightdm seems to freeze for ages, switching to another terminal and running top I can see gwibber-service taking most of the CPU, killing it gets me to a desktop.

(tested with login to gnome shell desktop).

Revision history for this message
Matt Price (matt-price) wrote :

I'm seeing something similar -- general slow performance which both top (100%+ on a dual core system) and iotop (high disk usage rates) trace back to gwibber-service, even when I haven't opened gwibber yet during the session). This is on an uptodate ubuntu precise. Happy to provide more info if needed. Thanks, matt

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.