Univention Bugzilla – Bug 31282
Appcenter module died during app update
Last modified: 2013-05-22 16:10:25 CEST
The appcenter module died during updating an app. DC master with UCS 3.1-0err85 (before the update!) The app update seems to have completed successfully but the progress bar is frozen at 50%. Pressing F5 in browser reloads the UMC and the update is shown as complete. apt-get dist-upgrade shows no problems. ---[management-console-server.log]--- 29.04.13 15:19:33.598 MAIN ( WARN ) : Client: _recv: error on socket: [Errno 104] Die Verbindung wurde vom Kommunikationspartner zur?ckgesetzt 29.04.13 15:19:33.598 MAIN ( WARN ) : Socket died (module=appcenter) 29.04.13 15:19:33.598 MAIN ( WARN ) : Module process appcenter died (pid: 32128, exit status: -1, signal: -1) 29.04.13 15:19:33.598 MAIN ( WARN ) : Cleaning up requests 29.04.13 15:19:33.598 MAIN ( WARN ) : Invalidating all pending requests 136724157337001-547 29.04.13 15:19:33.598 MAIN ( WARN ) : Remove inactivity timer 29.04.13 15:19:33.608 MAIN ( PROCESS ) : ModuleProcess: child died 29.04.13 15:19:33.608 MAIN ( WARN ) : Module process appcenter died (pid: 32128, exit status: -1, signal: 6) 29.04.13 15:20:13.480 MAIN ( PROCESS ) : running: ['/usr/sbin/univention-management-console-module', '-m', 'appcenter', '-s', '/var/run/univention-management-console/31792-1367241613479.socket', '-d', '2', '-l', 'de_DE.UTF-8'] ---[management-console-module-appcenter.log]--- 29.04.13 15:19:30.329 MODULE ( PROCESS ) : Trigger für python-support werden verarbeitet ... 29.04.13 15:19:30.329 MODULE ( PROCESS ) : Aufruf des Nach-Installations-Triggers python-support 29.04.13 15:20:13.564 DEBUG_INIT
Created attachment 5211 [details] gdb traceback appcenter module Seems to be reproducible. Crash happens in python-apt. gdb traceback has been attached.
Would be interesting to know what happens with an updated python-apt package. We have 0.7.100, wheezy ships with 0.8.8.2: http://packages.debian.org/source/wheezy/python-apt
(In reply to comment #1) > Created an attachment (id=5211) [details] > gdb traceback appcenter module > > Seems to be reproducible. Crash happens in python-apt. gdb traceback has been > attached. Could you append the core file?
Created attachment 5214 [details] core file of crashed appcenter module
(In reply to comment #2) > Would be interesting to know what happens with an updated python-apt package. > We have 0.7.100, wheezy ships with 0.8.8.2: > > http://packages.debian.org/source/wheezy/python-apt Yes, but I did not manage to get this working: root@master120:~# apt-get install python-apt univention-server-master [...] python-apt : Depends: python (>= 2.6.6-7~) but 2.6.6-3.22.201205211619 is to be installed
This only happens when app.install_dry_run() adds the component and does not remove it afterwards and app.install() does not add the component (because install_dry_run already did that). This was done to save one ucr commit on the repository files as they may be time consuming. But also if app.install() does not add its own repository, it does remove the old ones. After this step, no package_manager.reopen_cache() is done. So the install routine is then working with an outdated cache and installs packages with it. A reopen_cache() afterwards causes the segfault. A reopen_cache() before installation prevents it: Index: umc/python/appcenter/app_center.py =================================================================== --- umc/python/appcenter/app_center.py (Revision 40242) +++ umc/python/appcenter/app_center.py (Arbeitskopie) @@ -869,6 +869,7 @@ # dont remove yourself (if already added) if iapp is not self: component_manager.remove_app(iapp) + package_manager.reopen_cache() # add the new repository component for the app if add_component:
Fixed in 3.1-2: univention-management-console-module-appcenter 2.0.147-1.132.201305071153 and 3.1-1: univention-management-console-module-appcenter 2.0.139-9.131.201305071151 I still do not understand why this happens only with certain apps/repositories. YAML, changelog updated.
reproducible when updating UCS 3.1-1 with OX 6.2 to OX 7.2 via appcenter. OK - errata3.1-1 OK - YAML OK - ucs3.1-2 OK - Changelog
http://errata.univention.de/ucs/3.1/102.html