Bugzilla – Bug 521332
update with Yast stops at rpm package aaa_base
Last modified: 2009-07-14 13:14:27 UTC
User-Agent: Mozilla/5.0 (compatible; Konqueror/4.2; Linux) KHTML/4.2.95 (like Gecko) SUSE In Yast2 (sw_single) I selected 170 packages from package group 'system' for update. The update proceeded until 44% and then never finished the install of package aaa_base-11.2-30.2.i586. Yast2 shows me a busy cursor (rotating balls) and the UI is not responsive (e.g. I cannot scroll the widget with package messages or close the app). The last lines of /var/log/YaST2/y2log (at the end of this report) reveal that yast has forked an rpm process which does not finish and that it receives application close events (but does not react on). Running ps shows me that the forked rpm is still alive after over 60 minutes (in whatever state): root 26741 0.0 0.3 8364 4384 ? S 14:55 0:00 rpm On the other hand a check with rpm -qi shows me a history of three aaa_base packages which also lists the new one as being installed today at 14:55:55. Could it be that the rpm process hangs in some post install? I attached the rpm process with gdb and got the following backtrace: #0 0xffffe424 in __kernel_vsyscall () #1 0xb7d828c9 in __lll_lock_wait () from /lib/libpthread.so.0 #2 0xb7d7def1 in _L_lock_765 () from /lib/libpthread.so.0 #3 0xb7d7dd09 in pthread_mutex_lock () from /lib/libpthread.so.0 #4 0xb7dc6978 in rpmsqWait () from /usr/lib/librpmio-4.4.so #5 0xb7f88024 in ?? () from /usr/lib/librpm-4.4.so #6 0xb7f889de in ?? () from /usr/lib/librpm-4.4.so #7 0xb7f8a53f in rpmpsmStage () from /usr/lib/librpm-4.4.so #8 0xb7f8b7fd in ?? () from /usr/lib/librpm-4.4.so #9 0xb7f8aed1 in rpmpsmStage () from /usr/lib/librpm-4.4.so #10 0xb7f8b7fd in ?? () from /usr/lib/librpm-4.4.so #11 0xb7f8a671 in rpmpsmStage () from /usr/lib/librpm-4.4.so #12 0xb7fb2a50 in rpmtsRun () from /usr/lib/librpm-4.4.so #13 0xb7f9e9cd in rpmInstall () from /usr/lib/librpm-4.4.so #14 0x0804bd4f in ?? () #15 0xb7c2dabe in __libc_start_main () from /lib/libc.so.6 tail of /var/log/YaST2/y2log: 2009-07-11 14:55:54 <1> galapagos(20300) [zypp] PackageProvider.cc(providePackage):147 provided Package (5345)aaa_base-11.2-30.2.i586(openSUSE 11.2-0) at /var/cache/zypp/packages/openSUSE 11.2-0/suse/i586/aaa_base-11.2-30.2.i586.rpm 2009-07-11 14:55:54 <1> galapagos(20300) [Pkg] PackageSlideShow.ycp:1087 Pkg Builtin called: PkgInstalled 2009-07-11 14:55:54 <1> galapagos(20300) [Pkg] Package.cc(searchPackage):577 Package 'aaa_base' installed: true 2009-07-11 14:55:55 <1> galapagos(20300) [Pkg] SlideShowCallbacks.ycp:299 Pkg Builtin called: PkgDU 2009-07-11 14:55:55 <2> galapagos(20300) [Pkg] Package.cc(PkgDU):2393 Disk usage for package aaa_base is unknown 2009-07-11 14:55:55 <1> galapagos(20300) [Pkg] SlideShowCallbacks.ycp:349 Pkg Builtin called: TargetAvailable 2009-07-11 14:55:55 <1> galapagos(20300) [YCP] SlideShowCallbacks.ycp:351 Available space (/): 47324921856 2009-07-11 14:55:55 <1> galapagos(20300) [zypp] RpmDb.cc(doInstallPackage):1976 RpmDb::installPackage(/var/cache/zypp/packages/openSUSE 11.2-0/suse/i586/aaa_base-11.2-30.2.i586.rpm,0x0000000c) 2009-07-11 14:55:55 <1> galapagos(20300) [zypp++] ExternalProgram.cc(start_program):210 Executing 'rpm' '--root' '/' '--dbpath' '/var/lib/rpm' '-U' '--percent' '--force' '--nodeps' '--' '/var/cache/zypp/packages/openSUSE 11.2-0/suse/i586/aaa_base-11.2-30.2.i586.rpm' 2009-07-11 14:55:55 <1> galapagos(20300) [zypp++] ExternalProgram.cc(start_program):354 pid 26741 launched 2009-07-11 15:32:16 <1> galapagos(20300) [qt-ui] YQMainWinDock.cc(closeEvent):297 Caught window manager close event - returning with YCancelEvent Reproducible: Didn't try Steps to Reproduce: 1. 2. 3.
> Could it be that the rpm process hangs in some post install? ps shows me that in fact rpm forked a shell script which obviously hangs in ececuting 'usermod': stefan 20258 0.0 0.1 22932 2060 ? Sl 14:29 0:02 \_ kdesud root 20261 0.0 0.0 3368 992 pts/9 Ss+ 14:29 0:00 \_ su root 20267 0.0 0.0 1992 460 pts/9 S+ 14:29 0:00 \_ kdesu_stub root 20270 0.0 0.0 4140 808 ? Ss 14:29 0:00 \_ yast2 root 20300 1.8 6.7 143856 77568 ? Sl 14:29 1:50 \_ y2base root 26741 0.0 0.3 8364 4356 ? S 14:55 0:00 \_ rpm root 26794 0.0 0.1 2868 1248 ? S 14:55 0:00 \_ sh root 26924 0.0 0.1 4860 1500 ? S 14:55 0:00 \_ usermod cat /proc/26924/cmdline contains /usr/sbin/usermod-gnobodynobody Trying to tar the proc directory of the usermod process reveals that is doing network activity: tar cjvf usermod1.proc /proc/26924 |grep beim tar: Entferne führende „/“ von Elementnamen tar: /proc/26924/net/anycast6: Datei hat sich beim Lesen geändert. tar: /proc/26924/net/pnp: Datei hat sich beim Lesen geändert. galapagos:~/traces # tar cjvf usermod1.proc /proc/26924 |grep beim tar: Entferne führende „/“ von Elementnamen tar: /proc/26924/net/rpc/auth.unix.gid: Datei hat sich beim Lesen geändert. tar: /proc/26924/net/rpc: Datei hat sich beim Lesen geändert. tar: /proc/26924/net/dev_snmp6/pan0: Datei hat sich beim Lesen geändert. tar: /proc/26924/net/dev_snmp6: Datei hat sich beim Lesen geändert. tar: /proc/26924/net/irda/discovery: Datei hat sich beim Lesen geändert. tar: /proc/26924/net/irda: Datei hat sich beim Lesen geändert. tar: /proc/26924/net/stat/nf_conntrack: Datei hat sich beim Lesen geändert. tar: /proc/26924/net/stat: Datei hat sich beim Lesen geändert. galapagos:~/traces # cat /proc/26924/cmdline So blaming yast seems no longer adequate. Feel free to give this bug a new summary.
Workaround (command line required :)): Killing the usermod process (with -9) made my install proceed. Hooray!
Known issue *** This bug has been marked as a duplicate of bug 510788 ***