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 on 2012-07-24
138
This bug affects 31 people
Affects Status Importance Assigned to Milestone
sessioninstaller (Ubuntu)
High
Martin Pitt
Precise
High
Unassigned
Quantal
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

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

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

Changed in sessioninstaller (Ubuntu):
status: New → Confirmed
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
skipper (attila-egri-nagy) wrote :

crash while trying to install rar for file-roller

Charles L. Rudd (ruddcl) wrote :

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

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.

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

Carla Sella (carla-sella) wrote :

Crashed installing mp3 plugins for Rhythmbox.

crashed installing card themes in FreeCell Solitary

Tom Wright (twright-tdw) wrote :

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

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.

Sudheer Avula (asudheer) wrote :

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

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.

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
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
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)
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

?

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.

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
Martin Pitt (pitti) wrote :

Fixed in lp:sessioninstaller rev 131.

Changed in sessioninstaller (Ubuntu Quantal):
status: In Progress → Fix Committed
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

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.

Michael (itsagizmo) wrote :

 r16372

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

Other bug subscribers