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

Reply via email to