software-properties-kde froze while updating the package list

Bug #522931 reported by Dima Ryazanov
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
install-package (Ubuntu)
Won't Fix
Undecided
Unassigned

Bug Description

I edited the software sources, and was asked to reload the list of packages. When I clicked "Reload", the application froze.
GDB shows that it's waiting for another process to exit:
"python /usr/bin/install-package --update"

Here's the backtrace for that process:

#0 0x00007fa7e51c1388 in *__GI___poll (fds=0x2f48090, nfds=3, timeout=<value optimized out>) at ../sysdeps/unix/sysv/linux/poll.c:83
#1 0x00007fa7e257d37c in g_main_context_poll (context=0x2d50080, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>)
    at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2904
#2 g_main_context_iterate (context=0x2d50080, block=<value optimized out>, dispatch=<value optimized out>, self=<value optimized out>)
    at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2586
#3 0x00007fa7e257d6c0 in IA__g_main_context_iteration (context=0x2d50080, may_block=1) at /build/buildd/glib2.0-2.22.3/glib/gmain.c:2654
#4 0x00007fa7e3b8c463 in QEventDispatcherGlib::processEvents (this=0x23cf920, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#5 0x00007fa7df7907ee in QGuiEventDispatcherGlib::processEvents (this=0x2f48090, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:204
#6 0x00007fa7e3b61862 in QEventLoop::processEvents (this=<value optimized out>, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
) at kernel/qeventloop.cpp:149
#7 0x00007fa7e3b61c3c in QEventLoop::exec (this=0x7fff31c2ee70, flags=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece.
) at kernel/qeventloop.cpp:201
#8 0x00007fa7e3b6597b in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#9 0x00007fa7e0641a56 in ?? () from /usr/lib/pymodules/python2.6/PyQt4/QtGui.so
#10 0x00000000004a290d in call_function (f=0x23c20b0, throwflag=<value optimized out>) at ../Python/ceval.c:3706
#11 PyEval_EvalFrameEx (f=0x23c20b0, throwflag=<value optimized out>) at ../Python/ceval.c:2389
#12 0x00000000004a40e0 in PyEval_EvalCodeEx (co=0x7fa7e6039648, globals=<value optimized out>, locals=<value optimized out>, args=0x0,
    argcount=<value optimized out>, kws=<value optimized out>, kwcount=0, defs=0x0, defcount=0, closure=0x0) at ../Python/ceval.c:2968
#13 0x00000000004a41b2 in PyEval_EvalCode (co=0x2f48090, globals=0x3, locals=0xffffffffffffffff) at ../Python/ceval.c:522
#14 0x00000000004c33a0 in run_mod (fp=0x239a640, filename=<value optimized out>, start=<value optimized out>, globals=<value optimized out>, locals=0x2348270,
    closeit=1, flags=0x7fff31c2f2b0) at ../Python/pythonrun.c:1335
#15 PyRun_FileExFlags (fp=0x239a640, filename=<value optimized out>, start=<value optimized out>, globals=<value optimized out>, locals=0x2348270, closeit=1,
    flags=0x7fff31c2f2b0) at ../Python/pythonrun.c:1321
#16 0x00000000004c3564 in PyRun_SimpleFileExFlags (fp=<value optimized out>, filename=0x7fff31c2fe68 "/usr/bin/install-package", closeit=1, flags=0x7fff31c2f2b0)
    at ../Python/pythonrun.c:931
#17 0x0000000000418ab7 in Py_Main (argc=-436072320, argv=<value optimized out>) at ../Modules/main.c:599
#18 0x00007fa7e510cabd in __libc_start_main (main=<value optimized out>, argc=<value optimized out>, ubp_av=<value optimized out>, init=<value optimized out>,
    fini=<value optimized out>, rtld_fini=<value optimized out>, stack_end=0x7fff31c2f3c8) at libc-start.c:220
#19 0x0000000000417ca9 in _start () at ../sysdeps/x86_64/elf/start.S:113

In any case, a GUI app should never block the UI while performing a slow action - especially waiting for another process to exit.

ProblemType: Bug
Architecture: amd64
Date: Tue Feb 16 15:41:27 2010
DistroRelease: Ubuntu 9.10
NonfreeKernelModules: nvidia
Package: software-properties-kde 0.75.4
PackageArchitecture: all
ProcEnviron:
 LANGUAGE=en_US:en
 PATH=(custom, user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcVersionSignature: Ubuntu 2.6.31-19.56-generic
SourcePackage: software-properties
Uname: Linux 2.6.31-19-generic x86_64

Revision history for this message
Dima Ryazanov (dima-gmail) wrote :
Revision history for this message
Dima Ryazanov (dima-gmail) wrote :
Download full text (10.8 KiB)

Also, here's the backtrace for software-properties-kde itself:

#0 0x00007f32cbf55cdd in __libc_waitpid (pid=4584, stat_loc=<value optimized out>, options=0) at ../sysdeps/unix/sysv/linux/waitpid.c:41
#1 0x0000000000507d42 in posix_waitpid (self=<value optimized out>, args=<value optimized out>) at ../Modules/posixmodule.c:5899
#2 0x00000000004a290d in call_function (f=0x2569020, throwflag=<value optimized out>) at ../Python/ceval.c:3706
#3 PyEval_EvalFrameEx (f=0x2569020, throwflag=<value optimized out>) at ../Python/ceval.c:2389
#4 0x00000000004a2e47 in fast_function (f=0x1fb8af0, throwflag=<value optimized out>) at ../Python/ceval.c:3792
#5 call_function (f=0x1fb8af0, throwflag=<value optimized out>) at ../Python/ceval.c:3727
#6 PyEval_EvalFrameEx (f=0x1fb8af0, throwflag=<value optimized out>) at ../Python/ceval.c:2389
#7 0x00000000004a40e0 in PyEval_EvalCodeEx (co=0x166b918, globals=<value optimized out>, locals=<value optimized out>, args=0x0, argcount=<value optimized out>,
    kws=<value optimized out>, kwcount=0, defs=0x0, defcount=0, closure=0x0) at ../Python/ceval.c:2968
#8 0x00000000004a245f in fast_function (f=0x26bee40, throwflag=<value optimized out>) at ../Python/ceval.c:3802
#9 call_function (f=0x26bee40, throwflag=<value optimized out>) at ../Python/ceval.c:3727
#10 PyEval_EvalFrameEx (f=0x26bee40, throwflag=<value optimized out>) at ../Python/ceval.c:2389
#11 0x00000000004a40e0 in PyEval_EvalCodeEx (co=0x164e6c0, globals=<value optimized out>, locals=<value optimized out>, args=0x1, argcount=<value optimized out>,
    kws=<value optimized out>, kwcount=0, defs=0x0, defcount=0, closure=0x0) at ../Python/ceval.c:2968
#12 0x000000000052be30 in function_call (func=0x1efd050, arg=0x160c710, kw=0x0) at ../Objects/funcobject.c:524
#13 0x000000000041d6e7 in PyObject_Call (func=0x1efd050, arg=0x7fff71b18644, kw=0x0) at ../Objects/abstract.c:2492
#14 0x00000000004254ff in instancemethod_call (func=0x1efd050, arg=0x160c710, kw=0x0) at ../Objects/classobject.c:2579
#15 0x000000000041d6e7 in PyObject_Call (func=0x1757370, arg=0x7fff71b18644, kw=0x0) at ../Objects/abstract.c:2492
#16 0x000000000049c623 in PyEval_CallObjectWithKeywords (func=0x1757370, arg=0x7f32cc311050, kw=0x0) at ../Python/ceval.c:3575
#17 0x00007f32c8adeb...

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

That's the expected behavior. It launches install-package to update the package list, and then will close both install-package and itself once its done.

Changed in software-properties (Ubuntu):
status: New → Invalid
Revision history for this message
Dima Ryazanov (dima-gmail) wrote :

How is this the expected behavior?

As I said, the application froze, completely. I gave up after 5 min. or so. "apt-get update", on the other hand, completes in about a second.

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

If you had said install-package never came up, then that would have been something.

affects: software-properties (Ubuntu) → install-package (Ubuntu)
Changed in install-package (Ubuntu):
status: Invalid → New
Revision history for this message
Dima Ryazanov (dima-gmail) wrote :

(Oh, sorry... I had never seen it work, so I didn't know something was supposed to come up.)

Revision history for this message
Jonathan Thomas (echidnaman) wrote :

The install-package program has been replaced by the much more robust qapt-batch utility for Kubuntu 10.10. Unfortunately this means that install-package is now unmaintained. (QApt Batch shouldn't be affected by this bug, though)

Changed in install-package (Ubuntu):
status: New → Won't Fix
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.