session-installer crashed with TypeError in _on_property_changed(): could not convert type dbus.Array to PyObject required for parameter 0

Bug #1028640 reported by Jeremiah Njoroge
138
This bug affects 31 people
Affects Status Importance Assigned to Milestone
sessioninstaller (Ubuntu)
Fix Released
High
Martin Pitt
Precise
Invalid
High
Unassigned
Quantal
Fix Released
High
Martin Pitt

Bug Description

installing mp3 plugins for Rhythmbox and the session installer crashed.

ProblemType: Crash
DistroRelease: Ubuntu 12.10
Package: sessioninstaller 0.20+bzr128-0ubuntu1
ProcVersionSignature: Ubuntu 3.5.0-6.6-generic 3.5.0
Uname: Linux 3.5.0-6-generic x86_64
ApportVersion: 2.4-0ubuntu5
Architecture: amd64
Date: Tue Jul 24 14:36:05 2012
ExecutablePath: /usr/bin/session-installer
InstallationMedia: Ubuntu 12.10 "Quantal Quetzal" - Alpha amd64 (20120720.1)
InterpreterPath: /usr/bin/python2.7
PackageArchitecture: all
ProcCmdline: /usr/bin/python /usr/bin/session-installer
ProcEnviron:
 SHELL=/bin/bash
 PATH=(custom, no user)
 LANG=en_US.UTF-8
PythonArgs: ['/usr/bin/session-installer']
SourcePackage: sessioninstaller
Title: session-installer crashed with TypeError in _on_property_changed(): could not convert type dbus.Array to PyObject required for parameter 0
UpgradeStatus: No upgrade log present (probably fresh install)
UserGroups: adm cdrom dip lpadmin plugdev sambashare sudo

Revision history for this message
Jeremiah Njoroge (jnjoroge) wrote :
visibility: private → public
tags: removed: need-duplicate-check
Changed in sessioninstaller (Ubuntu):
importance: Undecided → Medium
Revision history for this message
Launchpad Janitor (janitor) wrote :

Status changed to 'Confirmed' because the bug affects multiple users.

Changed in sessioninstaller (Ubuntu):
status: New → Confirmed
Revision history for this message
Ubuntu QA Website (ubuntuqa) wrote :

This bug has been reported on the Ubuntu ISO testing tracker.

A list of all reports related to this bug can be found here:
http://iso.qa.ubuntu.com/qatracker/reports/bugs/1028640

tags: added: iso-testing
Revision history for this message
skipper (attila-egri-nagy) wrote :

crash while trying to install rar for file-roller

Revision history for this message
Charles L. Rudd (ruddcl) wrote :

crash while to play music which was located on the network.

Revision history for this message
Robert Bruce Park (robru) wrote :

This bug bit me while trying to install rar, however I had apt-get going in a terminal installing some other stuff at the same time, so I'm gonna take a wild guess and say that it crashed because it couldn't get the dpkg lock.

Revision history for this message
Robin Catling (robinc) wrote :

Hit me trying to install fluendo mp3 codecs on the fly from Firefox - only app running, no other updates or package management going on.

Precise Daily updated from 10.31am 08.08.12

Hardware profile: https://wiki.edubuntu.org/robinc/Laptop/DellMM061

Revision history for this message
Carla Sella (carla-sella) wrote :

Crashed installing mp3 plugins for Rhythmbox.

Revision history for this message
Ricardo J. Moreira Teixeira (tchambalaia-gmail) wrote :

crashed installing card themes in FreeCell Solitary

Revision history for this message
Tom Wright (twright-tdw) wrote :

Also occurs when attempting to install GIMP to open a .xcf document.

Revision history for this message
jerrylamos (jerrylamos) wrote :

Occurred when installing package(s) for MOV file in movie player.

The playback of this movie requires a MPEG-4 AAC decoder plugin which is not installed.

Revision history for this message
Sudheer Avula (asudheer) wrote :

When I try to open eclipse application, ubuntu inturn tried to install a plugin and crashed while running session-installer.

Revision history for this message
Thiago Holmes (thiago-holmes) wrote :

Occurred when installing package(s) for MOV file in movie player.

The playback of this movie requires a MPEG-4 AAC decoder plugin which is not installed.

Revision history for this message
Steve Langasek (vorlon) wrote :

This is the single most frequent crash report in 12.10 right now. Marking as high-priority, and marking for SRU as well since this appears to be a regression introduced in SRU.

Changed in sessioninstaller (Ubuntu Precise):
status: New → Triaged
Changed in sessioninstaller (Ubuntu Quantal):
status: Confirmed → Triaged
Changed in sessioninstaller (Ubuntu Precise):
importance: Undecided → High
Changed in sessioninstaller (Ubuntu Quantal):
importance: Medium → High
Revision history for this message
Steve Langasek (vorlon) wrote :

Marking as 'high' because this is the single most frequent crash reported in 12.10 right now.

Was going to mark this for SRU as well, but it looks like there isn't actually any evidence of this crash occurring with 12.04; so it's probably an aptdaemon behavior change (as the backtrace somewhat suggests), and not a bug in sessioninstaller at all.

Changed in sessioninstaller (Ubuntu Precise):
status: Triaged → Invalid
Revision history for this message
Steve Langasek (vorlon) wrote :

According to <https://errors.ubuntu.com/bucket/?id=%2Fusr%2Fbin%2Fsession-installer%3ATypeError%3Amsg_reply_handler%3Async_properties%3A_on_property_changed>, the crash first appeared on July 23; so this may be correlated with aptdaemon 0.45+bzr848-0ubuntu1 (uploaded July 24 according to the changelog):

  * New upstream snapshot:
    - aptdaemon/client.py: Prefer GI GObject module. (LP: #1026066)

Martin, do you know what needs to happen here? It looks like perhaps aptdaemon isn't compatible with the python2 version of gi.repository.GObject, which sessioninstaller is using.

Maybe this needs to be replaced with a try: import [...] except: import [...]?

Changed in sessioninstaller (Ubuntu Precise):
assignee: nobody → Martin Pitt (pitti)
assignee: Martin Pitt (pitti) → nobody
Changed in sessioninstaller (Ubuntu Quantal):
assignee: nobody → Martin Pitt (pitti)
affects: sessioninstaller (Ubuntu Quantal) → aptdaemon (Ubuntu Quantal)
Revision history for this message
Steve Langasek (vorlon) wrote :

Possibly (untested):

if 'gi.repository' in sys.modules:
    from gi.repository import GObject
else:
    try:
        import gobject as GObject
    except:
        from gi.repository import GObject

?

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

Reproducer: zcat /usr/share/doc/sessioninstaller/examples/test.gz | python - --install-packages pmount

It looks like something is importing both the static gobject as well as the GI GObject in sessioninstaller.

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

This is a really tricky one. sessioninstaller/core.py imports both "gst" (which pulls in the static gobject binding) as well as a lot of GI modules, so crashes will happen in all kinds of cases :-(

As Steve says, it seems to have worked better when aptdaemon used the static gobject module as well; this is no guarantee to work, but might be an appropriate workaround until we finally get gstreamer 1.0 (which is introspectable).

affects: aptdaemon (Ubuntu Quantal) → sessioninstaller (Ubuntu Quantal)
Changed in sessioninstaller (Ubuntu Quantal):
status: Triaged → In Progress
Revision history for this message
Martin Pitt (pitti) wrote :

Fixed in lp:sessioninstaller rev 131.

Changed in sessioninstaller (Ubuntu Quantal):
status: In Progress → Fix Committed
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package sessioninstaller - 0.20+bzr131-0ubuntu1

---------------
sessioninstaller (0.20+bzr131-0ubuntu1) quantal; urgency=low

  * debian/control: Update Vcs-* to Quantal branch.
  * New upstream snapshot:
    - Fix typo in error message. (LP: #790500)
    - Make sure not to accidentally call defer.callback() twice (LP #848605)
    - Work around static vs. GI gobject binding crash. (LP: #1028640)
  * Drop fix-defer-callback.patch, included upstream.
 -- Martin Pitt <email address hidden> Tue, 21 Aug 2012 08:50:56 +0200

Changed in sessioninstaller (Ubuntu Quantal):
status: Fix Committed → Fix Released
Revision history for this message
Barry Warsaw (barry) wrote : Re: [Bug 1028640] Re: session-installer crashed with TypeError in _on_property_changed(): could not convert type dbus.Array to PyObject required for parameter 0

On Aug 21, 2012, at 06:05 AM, Steve Langasek wrote:

>if 'gi.repository' in sys.modules:
> from gi.repository import GObject
>else:
> try:
> import gobject as GObject
> except:
> from gi.repository import GObject

dbus-python does something like this, with minor differences:

if 'gi' in sys.modules:
    from gi.repository import GObject as gobject
else:
    import gobject

See dbus.gobject_service.py for details.

Revision history for this message
Michael (itsagizmo) wrote :

 r16372

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.