Ubuntu

Many python programs fail with: "undefined symbol: PyUnicodeUCS4_DecodeUTF8"

Reported by Martin Olsson on 2009-03-27
272
This bug affects 8 people
Affects Status Importance Assigned to Milestone
python2.6 (Ubuntu)
Critical
Michael Vogt
Jaunty
Critical
Michael Vogt

Bug Description

With python2.6 version 2.6.1-1ubuntu5, many extension modules fail to load, resulting in fatal errors such as:

mnemo@kingfish:~$ update-manager
Traceback (most recent call last):
  File "/usr/bin/update-manager", line 29, in <module>
    import gtk
  File "/var/lib/python-support/python2.6/gtk-2.0/gtk/__init__.py", line 38, in <module>
    import gobject as _gobject
  File "/var/lib/python-support/python2.6/gtk-2.0/gobject/__init__.py", line 33, in <module>
    from glib import spawn_async, idle_add, timeout_add, timeout_add_seconds, \
  File "/var/lib/python-support/python2.6/gtk-2.0/glib/__init__.py", line 30, in <module>
    from glib._glib import *
ImportError: /var/lib/python-support/python2.6/gtk-2.0/glib/_glib.so: undefined symbol: PyUnicodeUCS4_DecodeUTF8

The problem is corrected in version 2.6.1-1ubuntu5.1. Note that since Update Manager is one of the affected programs, users affected by this bug will need to upgrade using apt-get in a terminal:

$ sudo apt-get update && sudo apt-get dist-upgrade

Related branches

Martin Olsson (mnemo) wrote :

It seems that all python+GTK apps are affected by this bug:

mnemo@kingfish:~/projs/python/hello_world_gtk$ python hello.py
Traceback (most recent call last):
  File "hello.py", line 4, in <module>
    import gtk
  File "/var/lib/python-support/python2.6/gtk-2.0/gtk/__init__.py", line 38, in <module>
    import gobject as _gobject
  File "/var/lib/python-support/python2.6/gtk-2.0/gobject/__init__.py", line 33, in <module>
    from glib import spawn_async, idle_add, timeout_add, timeout_add_seconds, \
  File "/var/lib/python-support/python2.6/gtk-2.0/glib/__init__.py", line 30, in <module>
    from glib._glib import *
ImportError: /var/lib/python-support/python2.6/gtk-2.0/glib/_glib.so: undefined symbol: PyUnicodeUCS4_DecodeUTF8

Martin Olsson (mnemo) wrote :

"aptitude changelog pygtk" shows no changes recently, so it's probably not in there.
These were the packages I got in my two most recent updates (from /var/log/dpkg.log):

2009-03-27 09:06:39 upgrade python-dev 2.6.1-0ubuntu4 2.6.1-0ubuntu6
2009-03-27 09:06:39 upgrade python 2.6.1-0ubuntu4 2.6.1-0ubuntu6
2009-03-27 09:06:40 upgrade python-minimal 2.6.1-0ubuntu4 2.6.1-0ubuntu6
2009-03-27 09:06:43 upgrade libxtst-dev 2:1.0.3-1ubuntu1 2:1.0.3-1ubuntu2
2009-03-27 09:06:43 upgrade libxtst6 2:1.0.3-1ubuntu1 2:1.0.3-1ubuntu2
2009-03-27 09:06:43 upgrade command-not-found-data 0.2.33ubuntu3 0.2.34ubuntu1
2009-03-27 09:06:43 upgrade command-not-found 0.2.33ubuntu3 0.2.34ubuntu1
2009-03-27 09:06:44 upgrade language-selector 0.4.2 0.4.2.1
2009-03-27 09:06:44 upgrade language-selector-common 0.4.2 0.4.2.1
2009-03-27 10:51:53 upgrade python2.6-dev 2.6.1-1ubuntu4 2.6.1-1ubuntu5
2009-03-27 10:51:53 upgrade libpython2.6 2.6.1-1ubuntu4 2.6.1-1ubuntu5
2009-03-27 10:51:53 upgrade python2.6 2.6.1-1ubuntu4 2.6.1-1ubuntu5
2009-03-27 10:51:54 upgrade python2.6-minimal 2.6.1-1ubuntu4 2.6.1-1ubuntu5
2009-03-27 10:51:58 upgrade locales 2.9+cvs20090214-6 2.9+cvs20090214-7
2009-03-27 10:52:00 upgrade python-central 0.6.11ubuntu4 0.6.11ubuntu5
2009-03-27 10:52:00 upgrade bluetooth 4.32-0ubuntu2 4.32-0ubuntu3
2009-03-27 10:52:01 upgrade bluez-utils 4.32-0ubuntu2 4.32-0ubuntu3
2009-03-27 10:52:01 upgrade example-content 35 36
2009-03-27 10:52:01 upgrade firefox 3.0.7+nobinonly-0ubuntu1 3.0.7+nobinonly-0ubuntu2
2009-03-27 10:52:01 upgrade firefox-gnome-support 3.0.7+nobinonly-0ubuntu1 3.0.7+nobinonly-0ubuntu2
2009-03-27 10:52:02 upgrade gnome-app-install 0.5.22-0ubuntu1 0.5.23-0ubuntu1
2009-03-27 10:52:07 upgrade hal-info 20090227-0ubuntu1 20090324-0ubuntu1
2009-03-27 10:52:07 upgrade libkpathsea4 2007.dfsg.2-4 2007.dfsg.2-4ubuntu1
2009-03-27 10:52:07 upgrade nautilus-share 0.7.2-0ubuntu7 0.7.2-0ubuntu8
2009-03-27 10:52:07 upgrade texlive-base-bin 2007.dfsg.2-4 2007.dfsg.2-4ubuntu1
2009-03-27 10:52:09 upgrade texlive-base-bin-doc 2007.dfsg.2-4 2007.dfsg.2-4ubuntu1
2009-03-27 10:52:09 upgrade texlive-extra-utils 2007.dfsg.2-4 2007.dfsg.2-4ubuntu1
2009-03-27 10:52:10 upgrade xserver-common 2:1.6.0-0ubuntu4 2:1.6.0-0ubuntu5
2009-03-27 10:52:10 upgrade xserver-xorg-core-dbg 2:1.6.0-0ubuntu4 2:1.6.0-0ubuntu5
2009-03-27 10:52:10 upgrade xserver-xorg-core 2:1.6.0-0ubuntu4 2:1.6.0-0ubuntu5
2009-03-27 10:52:11 upgrade xserver-xorg-dev 2:1.6.0-0ubuntu4 2:1.6.0-0ubuntu5
2009-03-27 10:52:11 upgrade gnome-system-tools 2.22.2-0ubuntu1 2.22.2-0ubuntu2
2009-03-27 10:52:14 upgrade python2.6-dbg 2.6.1-1ubuntu4 2.6.1-1ubuntu5

Sebastien Bacher (seb128) wrote :

that break update-manager which means users will not get the fixed version or any update

Changed in python2.6 (Ubuntu):
importance: Undecided → High
Sebastien Bacher (seb128) wrote :

doko the change seems not detailled in the changelog was that on purpose or an error?

Changed in python2.6 (Ubuntu):
assignee: nobody → doko
Michael Vogt (mvo) on 2009-03-27
Changed in python2.6 (Ubuntu):
assignee: doko → nobody
status: New → Triaged
Matt Zimmerman (mdz) on 2009-03-27
Changed in python2.6 (Ubuntu Jaunty):
assignee: nobody → mvo
importance: High → Critical
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package python2.6 - 2.6.1-1ubuntu5.1

---------------
python2.6 (2.6.1-1ubuntu5.1) jaunty; urgency=low

  * revert to 2.6.1-1ubuntu4 because the -1ubuntu5 upload breaks
    the entire pygtk and makes important apps like update-manager
    no longer start (LP: #349467)

 -- Michael Vogt <email address hidden> Fri, 27 Mar 2009 11:26:41 +0100

Changed in python2.6:
status: Triaged → Fix Released
Matt Zimmerman (mdz) wrote :

The offending update has been disabled on archive.ubuntu.com until a fixed version is available. This will temporarily result in HTTP 403 errors and failed downloads. These are harmless, and users should simply refrain from upgrading until the problem is resolved (within the next couple of hours).

Martin Olsson (mnemo) wrote :

For those who installed the bad package before canonical 403'd it, please use a terminal and enter "sudo apt-get update" followed by "sudo apt-get upgrade".

If you have the broken python package you will likely also see crashes in many other applications. For example, when I run totem I get this SEGV:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0x7fa4805d07f0 (LWP 4447)]
0x000000000044f8a4 in totem_python_module_load (gmodule=0x28fc980) at /build/buildd/totem-2.26.0/src/plugins/totem-python-module.c:282
282 /build/buildd/totem-2.26.0/src/plugins/totem-python-module.c: No such file or directory.
 in /build/buildd/totem-2.26.0/src/plugins/totem-python-module.c
(gdb) bt
#0 0x000000000044f8a4 in totem_python_module_load (gmodule=0x28fc980) at /build/buildd/totem-2.26.0/src/plugins/totem-python-module.c:282
#1 0x00007fa47b1ecef4 in IA__g_type_module_use (module=0x28fc980) at /build/buildd/glib2.0-2.20.0/gobject/gtypemodule.c:257
#2 0x000000000044cf9d in totem_plugins_engine_activate_plugin (info=0x29a5f80) at /build/buildd/totem-2.26.0/src/plugins/totem-plugins-engine.c:533
#3 0x000000000044d7bd in totem_plugins_engine_load_dir (path=0x29a8010 "/usr/lib/totem/plugins/bbc")
    at /build/buildd/totem-2.26.0/src/plugins/totem-plugins-engine.c:318
#4 0x000000000044d3a0 in totem_plugins_engine_load_dir (path=0x29b2710 "/usr/lib/totem/plugins")
    at /build/buildd/totem-2.26.0/src/plugins/totem-plugins-engine.c:336
#5 0x000000000044d978 in totem_plugins_engine_init (totem=<value optimized out>)
    at /build/buildd/totem-2.26.0/src/plugins/totem-plugins-engine.c:352
#6 0x0000000000421538 in main (argc=1, argv=0x7fff8861fa08) at /build/buildd/totem-2.26.0/src/totem.c:255
(gdb)

Matt Zimmerman (mdz) on 2009-03-27
description: updated
summary: - update-manager fails to install todays updates due to "undefined symbol:
+ Many python programs fail with: "undefined symbol:
PyUnicodeUCS4_DecodeUTF8"
kulight (kulight) wrote :

349467 > 349462
how come 462 is a dupe of 467 ?

Daniel Holbach (dholbach) wrote :

kulight: the bug numbers are not important. The information in the bugs is more important.

Stinks like bug 394518 is a dupe of this one.

Darren Worrall (dazworrall) wrote :

Is it possible to get hold of the 5.1 deb so I dont have to wait for the mirrors to catch up?

Matt Zimmerman (mdz) wrote :

When the debs become available, you'll be able to download them directly from here if necessary:

amd64: https://launchpad.net/ubuntu/+source/python2.6/2.6.1-1ubuntu5.1/+build/920311
i386: https://launchpad.net/ubuntu/+source/python2.6/2.6.1-1ubuntu5.1/+build/920314

Darren Worrall (dazworrall) wrote :

Thanks for that :)

The i386 build has finished, but the binaries are 'awaiting acceptance'.

Darren Worrall (dazworrall) wrote :

Ignore me I'm being impatient :$

James Westby (james-w) on 2009-03-27
description: updated
Matt Zimmerman (mdz) wrote :

The fixed packages are now available on archive.ubuntu.com via apt-get.

Martin Olsson (mnemo) wrote :

I can confirm that update-manager, apport, totem etc are all working again after I ran sudo apt-get update && sudo apt-get upgrade. Terrific work with the quick fix!!

Sebastien Bacher (seb128) wrote :

I can confirm the new revision fixes the issue

jango (charraoalegria-netcabo) wrote :

I still can get any update...

Julian Lam (julian-lam) wrote :

Glad to report that this problem has been fixed by the latest batch of updates.

Great work everyone!

bwallum (rbw2) wrote :

I confirm that I had a problem with the Update Manager not running and solved it with your recommendation to run the code:

$ sudo apt-get dist-upgrade

That you for the help, all running as expected now.

Note that the buggy Python was used for at least some hours also on the build servers and can have corrupted some packages. One package I know of is the i386 version of HPLIP 3.9.2-3ubuntu2. See bug 349781. I am rebuilding this package now as the build server should use the fixed version now.

Everyone who maintains packages of Python apps or libraries please check. Everyone who still has problems with Python apps after a full update, please addd a link to this bug and to bug 349781 in your bug report.

To post a comment you must log in.