Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 698196 - =app-portage/portage-utils-0.81: qlop -r reports all aborted merges
Summary: =app-portage/portage-utils-0.81: qlop -r reports all aborted merges
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Tools (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Fabian Groffen
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2019-10-21 12:02 UTC by Till Schäfer
Modified: 2019-11-28 12:36 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Till Schäfer 2019-10-21 12:02:26 UTC
"qlop -r" lists all aborted merges since after upgrading to =app-portage/portage-utils-0.81. 

Example:

# qlop -rtv
2015-04-30T16:05:23 >>> x11-libs/libxcb-1.11-r1: 39237:48:56... (12 of 16) ETA: unknown
2015-04-30T19:40:27 >>> sys-power/bbswitch-0.8: 39234:13:52... (1 of 1) ETA: unknown
2015-04-30T22:16:22 >>> sys-firmware/iwl3160-7260-bt-ucode-37.8.10_p1: 39231:37:57... (1 of 2) ETA: unknown
2015-04-30T22:16:47 >>> sys-firmware/iwl3160-7260-bt-ucode-37.8.10_p1: 39231:37:32... (1 of 2) ETA: unknown
2015-04-30T23:10:20 >>> www-client/firefox-31.6.0: 39230:43:59... (6 of 6) ETA: unknown
2015-05-01T00:11:12 >>> x11-themes/oxygen-gtk-1.4.6: 39229:43:07... (1 of 1) ETA: unknown
2015-05-03T18:21:30 >>> dev-java/java-config-wrapper-0.16: 39163:32:49... (1 of 8) ETA: unknown
2015-05-03T18:21:33 >>> sys-apps/baselayout-java-0.1.0: 39163:32:46... (2 of 8) ETA: unknown
[...]
2019-09-18T19:17:20 >>> kde-misc/playbar2-2.5-r1: 786:36:59... (1 of 1) ETA: unknown
2019-10-01T11:17:45 >>> app-portage/gentoolkit-0.4.6: 482:36:34... (2 of 2) ETA: unknown
2019-10-01T11:28:53 >>> app-portage/gentoolkit-0.4.6: 482:25:26... (1 of 1) ETA: unknown
2019-10-01T12:16:45 >>> app-portage/gentoolkit-0.4.6: 481:37:34... (28 of 56) ETA: unknown
2019-10-16T12:07:46 >>> net-libs/libircclient-1.8: 121:46:33... (1 of 4) ETA: unknown
2019-10-16T12:07:46 >>> dev-libs/libevent-2.1.8: 121:46:33... (2 of 4) ETA: unknown
2019-10-21T12:12:51 >>> www-client/firefox-69.0.3: 1:41:28... (1 of 1) ETA: 46′30″ (longest run)
2019-10-21T12:14:32 >>> www-client/firefox-69.0.3: 1:39:47... (1 of 1) ETA: 48′11″ (longest run)
2017-04-21T14:30:38 <<< media-sound/kmidimon-0.7.5: 21911:23:41... ETA: unknown

Reproducible: Always




Portage 2.3.76 (python 3.6.9-final-0, default/linux/amd64/17.1/desktop/plasma/systemd, gcc-8.3.0, glibc-2.29-r2, 5.2.18-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-5.2.18-gentoo-x86_64-Intel-R-_Core-TM-_i7-4810MQ_CPU_@_2.80GHz-with-gentoo-2.6
KiB Mem:    16388788 total,   2777744 free
KiB Swap:   16777212 total,  16777212 free
Timestamp of repository gentoo: Mon, 21 Oct 2019 08:25:48 +0000
Head commit of repository gentoo: 62b1c9216244eeb6cb74da0240a9555850699c99

Timestamp of repository kde: Sun, 20 Oct 2019 09:25:11 +0000
Head commit of repository kde: 0d509f32fde9a16eace1c53af3884cb6b69ba20a

sh bash 4.4_p23-r1
ld GNU ld (Gentoo 2.32 p2) 2.32.0
app-shells/bash:          4.4_p23-r1::gentoo
dev-java/java-config:     2.2.0-r4::gentoo
dev-lang/perl:            5.28.2-r1::gentoo
dev-lang/python:          2.7.16::gentoo, 3.6.9::gentoo
dev-util/cmake:           3.14.6::gentoo
dev-util/pkgconfig:       0.29.2::gentoo
sys-apps/baselayout:      2.6-r1::gentoo
sys-apps/sandbox:         2.13::gentoo
sys-devel/autoconf:       2.13-r1::gentoo, 2.69-r4::gentoo
sys-devel/automake:       1.16.1-r1::gentoo
sys-devel/binutils:       2.32-r1::gentoo
sys-devel/gcc:            8.3.0-r1::gentoo
sys-devel/gcc-config:     2.0::gentoo
sys-devel/libtool:        2.4.6-r3::gentoo
sys-devel/make:           4.2.1-r4::gentoo
sys-kernel/linux-headers: 4.19::gentoo (virtual/os-headers)
sys-libs/glibc:           2.29-r2::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo.git
    priority: -1000
    sync-git-verify-commit-signature: true

kde
    location: /var/db/repos/kde
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/kde.git
    masters: gentoo

shared_overlay
    location: /opt/conf/common/var/db/repos/shared_overlay
    masters: gentoo
    priority: 100

local_overlay
    location: /var/db/repos/local_overlay
    masters: gentoo
    priority: 200

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="*"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe -ftree-vectorize -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/lib64/libreoffice/program/sofficerc /usr/share/config /usr/share/gnupg/qualified.txt /usr/share/maven-bin-3.6/conf"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php7.3/ext-active/ /etc/php/cgi-php7.3/ext-active/ /etc/php/cli-php7.3/ext-active/ /etc/portage/package.accept_keywords/99-autounmask /etc/portage/package.unmask/99-autounmask /etc/portage/package.use/99-autounmask /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c"
CXXFLAGS="-march=native -O2 -pipe -ftree-vectorize -ggdb"
DISTDIR="/usr/portage/distfiles"
EMERGE_DEFAULT_OPTS="--with-bdeps=y --autounmask-write --autounmask-continue --jobs=2 --load-average=8 --backtrack=100"
ENV_UNSET="DBUS_SESSION_BUS_ADDRESS DISPLAY GOBIN PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs compressdebug config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch parallel-install pid-sandbox preserve-libs protect-owned sandbox sfperms sign splitdebug strict strict-keepdir unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.utf8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
MAKEOPTS="-j8"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
USE="X a52 aac acl acpi activities aes alsa amd64 apng avx avx2 bash-completion berkdb bluetooth branding brotli bzip2 cairo cdaudio cdda cddb cdparanoia cdr chm cli crypt cryptsetup cups cxx dbus declarative djvu dnssec dri dri3 dts dvd dvdr egl emboss encode epub evdev exif f16c fam ffmpeg flac fma3 fortran gdbm gif glamor gles glib gpg gpm gstreamer gtk gzip iconv icu id3tag idn imagemagick inotify ipv6 irc jpeg jpeg2k kde kipi kwallet lame lcms ldap libnotify libsamplerate libtirpc lvm lzma mad matroska mmx mmxext mng mp3 mp4 mpeg mplayer mtp multilib musicbrainz ncurses networkmanager nls nptl ntp ogg opengl openmp openvpn opus otr pam pango pclmul pcre pdf phonon plasma pm-utils png policykit popcnt ppds pulseaudio qemu qml qt5 quicktime rar readline real rss sdl seccomp semantic-desktop spell spice split-usr sse sse2 sse3 sse4_1 sse4_2 ssl ssse3 startup-notification svg systemd taglib tcpd theora threads thumbnail tiff truetype twolame udev udisks uefi unicode upower usb v4l v4l2 vaapi vcd vim-syntax visualization vorbis vpx wavpack wayland widgets wifi wma wmf wxwidgets x264 x265 xattr xcb xcomposite xinerama xml xv xvid xvidv xvmc xz zlib" ABI_X86="64" ADA_TARGET="gnat_2018" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 f16c fma3 mmx mmxext pclmul popcnt sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" GRUB_PLATFORMS="efi-64" INPUT_DEVICES="keyboard mouse evdev synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" NETBEANS_MODULES="apisupport cnd groovy gsf harness ide identity j2ee java mobility nb php profiler soa visualweb webcommon websvccommon xml" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-2" POSTGRES_TARGETS="postgres10 postgres11" PYTHON_SINGLE_TARGET="python3_6" PYTHON_TARGETS="python2_7 python3_6" RUBY_TARGETS="ruby24 ruby25" USERLAND="GNU" VIDEO_CARDS="intel nouveau modesetting" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  CC, CPPFLAGS, CTARGET, CXX, INSTALL_MASK, LC_ALL, LINGUAS, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

=================================================================
                        Package Settings
=================================================================

app-portage/portage-utils-0.81::gentoo was built with the following:
USE="nls openmp qmanifest qtegrity -libressl -static" ABI_X86="(64)"
Comment 1 Fabian Groffen gentoo-dev 2019-10-21 12:48:05 UTC
Bleh, perhaps I should remove the feature as a whole.  With Portage's dreaded log-format it is impossible to do this right without looking up actual processes.
Comment 2 Fabian Groffen gentoo-dev 2019-10-21 12:54:12 UTC
note to self:
la /proc/`pgrep emerge | tail -n1`/fd/
Comment 3 Toralf Förster gentoo-dev 2019-10-23 20:24:01 UTC
I'm much more irritated about:

tfoerste@t44 ~ $ /usr/bin/qlop --merge --unmerge --verbose --time --human -r www-client/firefox
2015-11-27T09:38:19 >>> www-client/firefox-42.0-r2: 1426 days, 11 hours, 44 minutes, 17 seconds... (2 of 2) ETA: unknown
2016-02-01T18:48:09 >>> www-client/firefox-44.0: 1360 days, 2 hours, 34 minutes, 27 seconds... (3 of 4) ETA: unknown
2016-04-28T22:01:16 >>> www-client/firefox-45.1.0: 1273 days, 21 minutes, 20 seconds... (2 of 2) ETA: unknown
2016-04-28T22:33:04 >>> www-client/firefox-45.1.0: 1272 days, 23 hours, 49 minutes, 32 seconds... (1 of 1) ETA: unknown
2016-04-28T22:35:55 >>> www-client/firefox-45.1.0: 1272 days, 23 hours, 46 minutes, 41 seconds... (1 of 1) ETA: unknown
2016-04-28T22:49:33 >>> www-client/firefox-45.1.0: 1272 days, 23 hours, 33 minutes, 3 seconds... (1 of 1) ETA: unknown
2016-04-28T23:48:42 >>> www-client/firefox-46.0: 1272 days, 22 hours, 33 minutes, 54 seconds... (3 of 3) ETA: unknown
2016-05-01T13:03:41 >>> www-client/firefox-45.1.0: 1270 days, 9 hours, 18 minutes, 55 seconds... (4 of 5) ETA: unknown
2016-06-20T19:55:56 >>> www-client/firefox-45.2.0: 1220 days, 2 hours, 26 minutes, 40 seconds... (1 of 1) ETA: unknown
2017-03-20T19:45:43 >>> www-client/firefox-52.0.1: 947 days, 1 hour, 36 minutes, 53 seconds... (12 of 14) ETA: unknown
2017-03-20T22:03:19 >>> www-client/firefox-52.0.1: 946 days, 23 hours, 19 minutes, 17 seconds... (1 of 1) ETA: unknown
2017-03-21T19:54:26 >>> www-client/firefox-52.0.1-r1: 946 days, 1 hour, 28 minutes, 10 seconds... (1 of 1) ETA: unknown
2017-03-21T19:57:42 >>> www-client/firefox-52.0.1-r1: 946 days, 1 hour, 24 minutes, 54 seconds... (1 of 1) ETA: unknown
2017-03-21T21:08:06 >>> www-client/firefox-45.8.0: 946 days, 14 minutes, 30 seconds... (1 of 1) ETA: unknown
2017-05-19T22:07:25 >>> www-client/firefox-53.0-r1: 887 days, 15 minutes, 11 seconds... (1 of 1) ETA: unknown
2018-01-29T22:08:13 >>> www-client/firefox-58.0: 631 days, 23 hours, 14 minutes, 23 seconds... (8 of 8) ETA: unknown
2018-02-03T22:37:28 >>> www-client/firefox-58.0.1: 626 days, 22 hours, 45 minutes, 8 seconds... (26 of 30) ETA: unknown
2018-07-08T21:15:56 >>> www-client/firefox-61.0-r1: 472 days, 1 hour, 6 minutes, 40 seconds... (1 of 1) ETA: unknown
2018-09-07T22:16:41 >>> www-client/firefox-62.0-r1: 411 days, 5 minutes, 55 seconds... (3 of 4) ETA: unknown
2018-10-31T21:27:29 >>> www-client/firefox-63.0.1: 356 days, 23 hours, 55 minutes, 7 seconds... (2 of 2) ETA: unknown
2019-02-01T22:30:48 >>> www-client/firefox-65.0: 263 days, 22 hours, 51 minutes, 48 seconds... (10 of 12) ETA: unknown
2019-10-11T21:16:52 >>> www-client/firefox-69.0.3: 12 days, 1 hour, 5 minutes, 44 seconds... (5 of 5) ETA: unknown
2019-10-23T21:45:52 >>> www-client/firefox-70.0: 36 minutes, 44 seconds... (4 of 5) ETA: 32 minutes, 9 seconds (average run)
Comment 4 Larry the Git Cow gentoo-dev 2019-10-27 12:22:27 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/proj/portage-utils.git/commit/?id=c9d7b9de78f1488827cb516bf61a54df28a750ab

commit c9d7b9de78f1488827cb516bf61a54df28a750ab
Author:     Fabian Groffen <grobian@gentoo.org>
AuthorDate: 2019-10-27 12:19:06 +0000
Commit:     Fabian Groffen <grobian@gentoo.org>
CommitDate: 2019-10-27 12:19:06 +0000

    qlop: take two at implementing currently running merges
    
    Probe /proc filesystem for running merges, and use the atoms found there
    to select the packages to list.  In addition, prune any operations that
    started > 10 days ago so there will be some sort of convergence.
    
    Bug: https://bugs.gentoo.org/698196
    Signed-off-by: Fabian Groffen <grobian@gentoo.org>

 main.c     |   3 +-
 man/qlop.1 |   4 +-
 qlop.c     | 175 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
 3 files changed, 173 insertions(+), 9 deletions(-)
Comment 5 Louis Sautier (sbraz) gentoo-dev 2019-10-28 10:15:57 UTC
(In reply to Larry the Git Cow from comment #4)
> The bug has been referenced in the following commit(s):
> 
> https://gitweb.gentoo.org/proj/portage-utils.git/commit/
> ?id=c9d7b9de78f1488827cb516bf61a54df28a750ab
> 
> commit c9d7b9de78f1488827cb516bf61a54df28a750ab
> Author:     Fabian Groffen <grobian@gentoo.org>
> AuthorDate: 2019-10-27 12:19:06 +0000
> Commit:     Fabian Groffen <grobian@gentoo.org>
> CommitDate: 2019-10-27 12:19:06 +0000
> 
>     qlop: take two at implementing currently running merges
>     
>     Probe /proc filesystem for running merges, and use the atoms found there
>     to select the packages to list.  In addition, prune any operations that
>     started > 10 days ago so there will be some sort of convergence.
>     
>     Bug: https://bugs.gentoo.org/698196
>     Signed-off-by: Fabian Groffen <grobian@gentoo.org>
> 
>  main.c     |   3 +-
>  man/qlop.1 |   4 +-
>  qlop.c     | 175
> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++---
>  3 files changed, 173 insertions(+), 9 deletions(-)

Thanks, that seems to be much better! How do you check that the file is actually being opened by portage (and not someone opening it to watch it)? It works but I don't really see what part of the code does it.
Comment 6 Fabian Groffen gentoo-dev 2019-10-28 10:27:24 UTC
(In reply to Louis Sautier (sbraz) from comment #5)
> Thanks, that seems to be much better! How do you check that the file is
> actually being opened by portage (and not someone opening it to watch it)?
> It works but I don't really see what part of the code does it.

I don't, indeed opening it with vim would trigger it too as false positive.  However, because there will be no outstanding merge in the log, it won't show it.

Thing is, thanks to python-config the only thing one sees is python as executable, so it is even impossible to trace it down to emerge.  python-config should have set argv[0], but this was always rejected as being necessary or a good idea.
Comment 7 Fabian Groffen gentoo-dev 2019-11-27 14:53:05 UTC
Please give 0.82 a try.
Comment 8 Till Schäfer 2019-11-28 12:36:43 UTC
both issues reported here work for me now