MASTER gwibber lacks error/exception handling for dbus calls (crashes in call_blocking)

Bug #439325 reported by Alexander Sack
296
This bug affects 90 people
Affects Status Importance Assigned to Milestone
Gwibber
Fix Released
High
Ken VanDine
gwibber (Ubuntu)
Fix Released
High
Ken VanDine

Bug Description

Binary package hint: gwibber

gwibber needs refactoring to properly deal with gwibber-daemon going down (and coming back). I am not sure how to best do this without putting exception handling to all places where we use the dbus proxies.

examples for crashes that would be fixed by this are bug 422726 bug 434833 and bug 436961

query for dupes: https://bugs.edge.launchpad.net/ubuntu/+source/gwibber?field.searchtext=call_blocking

Alexander Sack (asac)
summary: - MASTER gwibber crashes when daemon goes down
+ MASTER gwibber crashes in dbus call_blocking when daemon goes down
Changed in gwibber (Ubuntu):
importance: Undecided → High
status: New → Triaged
Changed in gwibber:
importance: Undecided → High
status: New → Triaged
Alexander Sack (asac)
description: updated
summary: - MASTER gwibber crashes in dbus call_blocking when daemon goes down
+ MASTER gwibber lacks error/exception handling for dbus calls (crashes in
+ call_blocking)
Changed in gwibber:
assignee: nobody → Ken VanDine (ken-vandine)
status: Triaged → In Progress
Changed in gwibber:
status: In Progress → Fix Committed
Changed in gwibber (Ubuntu):
assignee: nobody → Ken VanDine (ken-vandine)
status: Triaged → In Progress
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package gwibber - 2.0.0~bzr465-0ubuntu1

---------------
gwibber (2.0.0~bzr465-0ubuntu1) karmic; urgency=low

  * New upstream snapshot - r465
    - Fixes for dbus call blocking crashes (LP: #422726) (LP: #434833)
    - dbus client and server now follow name changes (LP: #439325) (LP: #434592)
    - Remember previous window size and position (LP: #422525)
    - Remember previous account tree splitter position
    - Remember previous input area size
    - Do not change input area height when resizing main window (LP: #422532)
    - Version themes to ensure only compatible themes are available
    - fix dict handling for facebook replies (LP: #436690)
    - facebook now uses pycurl instead of urllib2, fixes hangs (LP: #422864)
  * debian/preinst:
    - Moved from debian/postinst and added version compare
  * debian/control:
    - depend on python-pycurl, urllib2 was causing terrible problems
      with facebook (LP: #422864)

 -- Ken VanDine <email address hidden> Sun, 04 Oct 2009 20:40:40 -0400

Changed in gwibber (Ubuntu):
status: In Progress → Fix Released
Revision history for this message
Serge Matveenko (lig) wrote :

Are we need another bug to backport gwibber 2.0 to hardy?

Revision history for this message
Serge Matveenko (lig) wrote :
Changed in gwibber:
status: Fix Committed → Fix Released
Revision history for this message
Mike Basinger (mike.basinger) wrote :

I'm seeing the problem again.

Changed in gwibber (Ubuntu):
status: Fix Released → New
Revision history for this message
John Vivirito (gnomefreak) wrote :

I have not stopped seeing this bug.
here is version info:

gwibber:
  Installed: 2.0.0~bzr477-0ubuntu2~daily1
  Candidate: 2.0.0~bzr477-0ubuntu2~daily1

Revision history for this message
Ken VanDine (ken-vandine) wrote :

Can you please describe the bahaviour you are seeing and attach terminal output from both gwibber-daemon -d and gwibber?

Revision history for this message
John Vivirito (gnomefreak) wrote :
Download full text (3.8 KiB)

It seems with the update i did last night fixed this as im not seeing dbus in either output.

Version:
gwibber:
  Installed: 2.0.0~bzr478-0ubuntu2~daily1
  Candidate: 2.0.0~bzr478-0ubuntu2~daily1

gnomefreak@Development:~$ gwibber-daemon -d
WARNING:root:desktopcouch is not available. . falling back to gconf
DEBUG:gwibber:Scheduled Op: <receive:identica>
DEBUG:gwibber:Scheduled Op: <responses:identica>
DEBUG:gwibber:Scheduled Op: <private:identica>
DEBUG:gwibber:Scheduled Op: <receive:twitter>
DEBUG:gwibber:Scheduled Op: <responses:twitter>
DEBUG:gwibber:Scheduled Op: <private:twitter>
DEBUG:gwibber:Queueing Op: <receive:identica>
DEBUG:gwibber:Queueing Op: <receive:twitter>
DEBUG:gwibber:Queueing Op: <responses:twitter>
DEBUG:gwibber:Queueing Op: <private:twitter>
DEBUG:gwibber:Queueing Op: <private:identica>
DEBUG:gwibber:Queueing Op: <responses:identica>
DEBUG:gwibber:Performing Op: <receive:identica>
DEBUG:gwibber:Performing Op: <receive:twitter>
DEBUG:gwibber:Performing Op: <responses:twitter>
DEBUG:gwibber:Performing Op: <private:twitter>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <responses:twitter>
DEBUG:gwibber:Performing Op: <private:identica>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <receive:twitter>
DEBUG:gwibber:Performing Op: <responses:identica>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <receive:identica>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <private:identica>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <private:twitter>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <responses:identica>
DEBUG:gwibber:Loading Complete
DEBUG:gwibber:Scheduled Op: <receive:identica>
DEBUG:gwibber:Scheduled Op: <responses:identica>
DEBUG:gwibber:Scheduled Op: <private:identica>
DEBUG:gwibber:Scheduled Op: <receive:twitter>
DEBUG:gwibber:Scheduled Op: <responses:twitter>
DEBUG:gwibber:Scheduled Op: <private:twitter>
DEBUG:gwibber:Queueing Op: <receive:identica>
DEBUG:gwibber:Queueing Op: <receive:twitter>
DEBUG:gwibber:Queueing Op: <responses:twitter>
DEBUG:gwibber:Queueing Op: <private:twitter>
DEBUG:gwibber:Queueing Op: <private:identica>
DEBUG:gwibber:Queueing Op: <responses:identica>
DEBUG:gwibber:Performing Op: <receive:identica>
DEBUG:gwibber:Performing Op: <receive:twitter>
DEBUG:gwibber:Performing Op: <responses:twitter>
DEBUG:gwibber:Performing Op: <private:twitter>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <responses:twitter>
DEBUG:gwibber:Performing Op: <private:identica>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <receive:twitter>
DEBUG:gwibber:Performing Op: <responses:identica>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <receive:identica>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <private:twitter>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <private:identica>
DEBUG:gwibber:Starting scheduled operations
DEBUG:gwibber:Finished Op: <responses:identica>
DEBUG:gwibber:Loading Complete

gnomefreak@Development:~$ gwibber
WARNING:roo...

Read more...

Revision history for this message
Omer Akram (om26er) wrote :

we are wondering if this is still an issue for you. there have been many changes in gwibber since this bug was reported. John can you please test if this still exist.

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

This has just crashed on me
Gwibber version: 2.29.90.1-0ubuntu2

Revision history for this message
Ken VanDine (ken-vandine) wrote :

I am betting what you are getting is a crash in desktopcouch, bug 530716. The fix for that was just uploaded.

Revision history for this message
Ryan Steele (rgsteele) wrote :

I believe this bug is related: Bug #539781

Changed in gwibber (Ubuntu):
status: Fix Released → New
Revision history for this message
Ken VanDine (ken-vandine) wrote :

This was opened as a general way to track places where we aren't handling exceptions at all for dbus calls. I don't think bug 539781 is because of lack of dbus error handling, it is a real failure. I think in that case it means the service didn't start, in which case the client should fail. I'll comment on that bug to try to collect more information.

Changed in gwibber (Ubuntu):
status: New → Fix Released
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.