Package: aptitude Version: 0.8.3-1 Severity: normal As every day, I ran "aptitude -u". But for one or two days (not sure if before or after the APT 1.3 final upload), all Opera APT repos gave a 404. (They no more do, so I can't reproduce it anymore with these repos, but will later try to get a working and persistent example with a dummy repo.)
The interesting effect was that if and only if I started "aptitude -u", it hung at "Loading cache" (no more percentage numbers shown, CPU idle). I had one aptitude instance "running" in that state for over 12 hours. strace looked like this with stanzas coming in ca. half-second intervals: # strace -p 758 strace: Process 758 attached futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169063, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541081, 517219}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336914) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169065, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541082, 17926}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336918) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169067, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541082, 518295}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336922) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169069, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541083, 19306}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336926) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169071, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541083, 519664}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336930) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169073, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541084, 20029}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336934) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169075, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541084, 520395}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336938) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169077, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541085, 20771}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336942) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169079, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541085, 521132}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336946) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169081, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541086, 21843}, NULL) = 0 futex(0x7f4351978264, FUTEX_CMP_REQUEUE_PRIVATE, 1, 2147483647, 0x7f4351978238, 336950) = 1 futex(0x7f4351978238, FUTEX_WAKE_PRIVATE, 1) = 1 futex(0x7f43519785d4, FUTEX_WAIT_PRIVATE, 169083, NULL) = 0 futex(0x7f4351978600, FUTEX_WAKE_PRIVATE, 1) = 0 gettimeofday({1474541086, 522212}, NULL) = 0 [...] What still worked more or less: * Pressing "q": It prompted me (inside the mini buffer) with y[n], but pressing "n" did not make the prompt (nor the line it's on) to go away and the instance then was completely locked. Only Ctrl-C helped then. * Pressing "q" and then "y" IIRC worked, but not immediately. * Pressing Ctrl-C and then starting "aptitude" without "-u" worked as usual (even with new packages and updates) and is what I consider a workaround. * Removing or commenting out the broken repositories worked as well and "aptitude -u" worked as before. I killed that instance with kill -SEGV to get a core dump. Here's the backtrace (after pressing "qn" and getting the non-vanishing prompt in the minibuffer): Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". Core was generated by `aptitude -u'. Program terminated with signal SIGSEGV, Segmentation fault. #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:183 183 ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S: No such file or directory. [Current thread is 1 (Thread 0x7f4352560780 (LWP 758))] (gdb) bt #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:183 #1 0x00007f43516ca663 in cwidget::threads::condition::wait<cwidget::threads::mutex::lock> (l=<synthetic pointer>, this=0x7f43519785d0 <cwidget::toplevel::eventq+80>) at ../../src/cwidget/generic/threads/threads.h:508 #2 cwidget::threads::condition::wait<cwidget::threads::mutex::lock, cwidget::threads::event_queue<cwidget::toplevel::event*>::not_empty> (p=..., l=<synthetic pointer>, this=0x7f43519785d0 <cwidget::toplevel::eventq+80>) at ../../src/cwidget/generic/threads/threads.h:527 #3 cwidget::threads::event_queue<cwidget::toplevel::event*>::get (this=0x7f4351978580 <cwidget::toplevel::eventq>) at ../../src/cwidget/generic/threads/event_queue.h:94 #4 cwidget::toplevel::mainloop (synch=synch@entry=0) at toplevel.cc:1167 #5 0x000056238bd5a89a in ui_main () at ../../src/ui.cc:3134 #6 0x000056238bc7d825 in main (argc=<optimized out>, argv=<optimized out>) at ../../src/main.cc:1427 -- Package-specific info:
Terminal: eterm-color $DISPLAY is set. which aptitude: /usr/bin/aptitude aptitude version information: aptitude 0.8.3 Compiler: g++ 6.1.1 20160802 Compiled against: apt version 5.0.0 NCurses version 6.0 libsigc++ version: 2.8.0 Gtk+ support disabled. Qt support disabled. Current library versions: NCurses version: ncurses 6.0.20160910 cwidget version: 0.5.17 Apt version: 5.0.0 aptitude linkage: linux-vdso.so.1 (0x00007ffc5234a000) libapt-pkg.so.5.0 => /usr/lib/x86_64-linux-gnu/libapt-pkg.so.5.0 (0x00007f202bb65000) libncursesw.so.5 => /lib/x86_64-linux-gnu/libncursesw.so.5 (0x00007f202b935000) libtinfo.so.5 => /lib/x86_64-linux-gnu/libtinfo.so.5 (0x00007f202b70b000) libsigc-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libsigc-2.0.so.0 (0x00007f202b504000) libcwidget.so.3 => /usr/lib/x86_64-linux-gnu/libcwidget.so.3 (0x00007f202b207000) libsqlite3.so.0 => /usr/lib/x86_64-linux-gnu/libsqlite3.so.0 (0x00007f202af02000) libboost_iostreams.so.1.61.0 => /usr/lib/x86_64-linux-gnu/libboost_iostreams.so.1.61.0 (0x00007f202acea000) libboost_filesystem.so.1.61.0 => /usr/lib/x86_64-linux-gnu/libboost_filesystem.so.1.61.0 (0x00007f202aad1000) libboost_system.so.1.61.0 => /usr/lib/x86_64-linux-gnu/libboost_system.so.1.61.0 (0x00007f202a8cd000) libxapian.so.22 => /usr/lib/x86_64-linux-gnu/libxapian.so.22 (0x00007f202a4c9000) libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007f202a2ac000) libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007f2029f29000) libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007f2029c25000) libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007f2029a0e000) libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007f2029670000) libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007f202946c000) libresolv.so.2 => /lib/x86_64-linux-gnu/libresolv.so.2 (0x00007f2029255000) libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f2029038000) libbz2.so.1.0 => /lib/x86_64-linux-gnu/libbz2.so.1.0 (0x00007f2028e28000) liblzma.so.5 => /lib/x86_64-linux-gnu/liblzma.so.5 (0x00007f2028c05000) liblz4.so.1 => /usr/lib/x86_64-linux-gnu/liblz4.so.1 (0x00007f20289f3000) librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007f20287eb000) libuuid.so.1 => /lib/x86_64-linux-gnu/libuuid.so.1 (0x00007f20285e4000) /lib64/ld-linux-x86-64.so.2 (0x00005649baa16000)
-- System Information: Debian Release: stretch/sid APT prefers unstable APT policy: (990, 'unstable'), (600, 'testing'), (500, 'unstable-debug'), (500, 'buildd-unstable'), (400, 'stable'), (110, 'experimental'), (1, 'experimental-debug'), (1, 'buildd-experimental') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 4.5.0-trunk-amd64 (SMP w/1 CPU core) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: sysvinit (via /sbin/init) Versions of packages aptitude depends on: ii aptitude-common 0.8.3-1 ii libapt-pkg5.0 1.3 ii libboost-filesystem1.61.0 1.61.0+dfsg-2.1+b1 ii libboost-iostreams1.61.0 1.61.0+dfsg-2.1+b1 ii libboost-system1.61.0 1.61.0+dfsg-2.1+b1 ii libc6 2.24-3 ii libcwidget3v5 0.5.17-4+b1 ii libgcc1 1:6.2.0-4 ii libncursesw5 6.0+20160910-1 ii libsigc++-2.0-0v5 2.9.3-1 ii libsqlite3-0 3.14.2-1 ii libstdc++6 6.2.0-4 ii libtinfo5 6.0+20160910-1 ii libxapian22v5 1.2.23-1 Versions of packages aptitude recommends: ii libparse-debianchangelog-perl 1.2.0-10 ii sensible-utils 0.0.9 Versions of packages aptitude suggests: ii apt-xapian-index 0.48 ii aptitude-doc-en [aptitude-doc] 0.8.3-1 ii debtags 2.1.2 ii tasksel 3.36 -- no debconf information