Bug 29332 - fedabipkgdiff exits with 1 due to - "Could not find package"
Summary: fedabipkgdiff exits with 1 due to - "Could not find package"
Status: NEW
Alias: None
Product: libabigail
Classification: Unclassified
Component: default (show other bugs)
Version: unspecified
: P2 normal
Target Milestone: ---
Assignee: Dodji Seketeli
URL:
Keywords:
Depends on:
Blocks: 27019
  Show dependency treegraph
 
Reported: 2022-07-07 18:14 UTC by Ben Woodard
Modified: 2023-04-03 22:24 UTC (History)
1 user (show)

See Also:
Host:
Target:
Build:
Last reconfirmed:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ben Woodard 2022-07-07 18:14:44 UTC
fedabipkgdiff 3mux exits with an error but there is no obvious reason for the failure.

$ fedabipkgdiff --self-compare -a --from fc36 3mux
Comparing the ABI of binaries between 3mux-1.1.0-5.fc36.aarch64.rpm and 3mux-1.1.0-5.fc36.aarch64.rpm:


Comparing the ABI of binaries between 3mux-1.1.0-5.fc36.armv7hl.rpm and 3mux-1.1.0-5.fc36.armv7hl.rpm:

==== SELF CHECK SUCCEEDED for '3mux' ====
==== SELF CHECK SUCCEEDED for 'fuzz' ====

Comparing the ABI of binaries between 3mux-1.1.0-5.fc36.i686.rpm and 3mux-1.1.0-5.fc36.i686.rpm:

==== SELF CHECK SUCCEEDED for '3mux' ====
==== SELF CHECK SUCCEEDED for 'fuzz' ====

Comparing the ABI of binaries between 3mux-1.1.0-5.fc36.ppc64le.rpm and 3mux-1.1.0-5.fc36.ppc64le.rpm:


Comparing the ABI of binaries between 3mux-1.1.0-5.fc36.s390x.rpm and 3mux-1.1.0-5.fc36.s390x.rpm:

==== SELF CHECK SUCCEEDED for '3mux' ====
==== SELF CHECK SUCCEEDED for 'fuzz' ====

Comparing the ABI of binaries between 3mux-1.1.0-5.fc36.x86_64.rpm and 3mux-1.1.0-5.fc36.x86_64.rpm:


[ben@alien scripts]$ echo $?
1
Comment 1 Ben Woodard 2022-07-09 18:58:18 UTC
To put a finer point on it. The underlying problem "could not load ELF symbols" is not propagated up to fedabipkgdiff

$ abipkgdiff --self-check  --d1 /home/ben/.cache/fedabipkgdiff/downloads/3mux-debuginfo-1.1.0-5.fc36.x86_64.rpm /home/ben/.cache/fedabipkgdiff/downloads/3mux-1.1.0-5.fc36.x86_64.rpm
==== SELF CHECK SUCCEEDED for '3mux' ====
==== Error happened during self check of 'fuzz' ====
could not load ELF symbols
==== SELF CHECK FAILED for 'fuzz' ====

This particular problem only seems to affect some arches: x86_64, ppc64le, and aarch64 it does not affect s390x, i686, and armv7hl
Comment 2 Ben Woodard 2022-07-09 19:16:19 UTC
The same thing seems to be happening with abseil-cpp
Comment 3 Ben Woodard 2022-07-09 19:35:32 UTC
another package that appears affected is age:

$ abipkgdiff --self-check  --d1 /home/ben/.cache/fedabipkgdiff/downloads/age-debuginfo-1.0.0-5.fc36.x86_64.rpm /home/ben/.cache/fedabipkgdiff/downloads/age-1.0.0-5.fc36.x86_64.rpm
==== SELF CHECK SUCCEEDED for 'age' ====
==== Error happened during self check of 'age-keygen' ====
could not load ELF symbols
==== SELF CHECK FAILED for 'age-keygen' ====
Comment 4 Ben Woodard 2022-07-09 20:11:40 UTC
I think that there are two bugs here.

1) fedabipkgdiff needs to propagate the "could not load ELF symbols" to its output.
2) we have to decide if not being able to load ELF symbols is in fact something that should cause fedabipkgdiff to fail.
   a) if it is, then we need to know why it can't load the ELF symbols.
   b) if it is not, then it shouldn't cause fedabipkgdiff to return non-zero

This appears to affect about 640 packages out of the 24,000 packages that I tried.

zram-generator yaksa xz-lzma-compat xtrkcad xorg-x11-drv-nvidia xorg-x11-drv-wacom-serial-support xorg-x11-drv-nvidia-470xx xe-guest-utilities-latest x2gowswrapper wine-core virtiofsd vim-minimal vgrep valgrind upm tuned-profiles-nfv-host-bin tracker totem-video-thumbnailer tinyexr tigervnc-server-minimal thunderbird-librnp-rnp texttopaps teamd tdb-tools sysutil systemtap-sdt-devel systemd-udev sysprof-capture-devel swift-lang sudo-python-plugin stdair subscription-manager sourcextractor++ steam sssd-nfs-idmap sssd-krb5-common sssd-common-pac speech-dispatcher-espeak-ng socket_wrapper snapd sane-backends-drivers-scanners sane-backends-drivers-cameras samba-winbind-modules samba-winbind-clients samba-dc-libs samba-common-tools samba-common-libs samba-client-libs rust-virtio-queue rust-vhost rust-vhost-user-backend rust-strict rust-rustcat rust-os-release rust-openssl-kdf rust-minimad rust-kvm-ioctls rust-kvm-bindings rust-fscommon rust-fatfs rust-ciborium-io rust-ciborium-ll rust-ciborium rubygem-importmap-rails rr rpm-sign-libs rpm-plugin-systemd-inhibit rpm-plugin-selinux rpm-build-libs rekonq rav1e-libs qemu-ui-spice-app qemu-ui-spice-core qemu-ui-sdl qemu-ui-opengl qemu-ui-gtk qemu-ui-curses qemu-ui-egl-headless qemu-system-x86 qemu-system-x86-core qemu-system-aarch64-core qemu-system-aarch64 qemu-pr-helper qemu-guest-agent qemu-device-usb-smartcard qemu-device-usb-redirect qemu-device-usb-host qemu-device-display-virtio-vga-gl qemu-device-display-virtio-gpu-pci-gl qemu-device-display-virtio-vga qemu-device-display-virtio-gpu-pci qemu-device-display-virtio-gpu-gl qemu-device-display-virtio-gpu qemu-device-display-vhost-user-gpu qemu-device-display-qxl qemu-char-spice qemu-block-nfs qemu-char-baum qemu-block-ssh qemu-block-iscsi qemu-block-rbd qemu-block-gluster qemu-block-dmg qemu-block-curl qemu-audio-spice qemu-audio-sdl qemu-audio-pa qemu-audio-jack qemu-audio-oss qemu-audio-alsa python-uri-template python-sphinx-pytest python-pytest-param-files python-pyproject-api python-limits python-isoduration python-fastbencode python-elastic-transport python-adafruit-board-toolkit python3-samba-dc python3-gobject-base pulseaudio-libs-glib2 proxmark3 polymake procps-ng plymouth-theme-spinner plymouth-system-theme plymouth-plugin-two-step plymouth-plugin-label plymouth-core-libs plymouth-graphics-libs pjproject pkgconf-pkg-config pipewire-jack-audio-connection-kit perl-YAML-PP-Ref perl-YAML-Parser perl-Sys-Hostname perl-OpenGL-GLUT perl-I18N-Langinfo perl-Hash-Util-FieldHash perl-devel perf pasdoc PackageKit-gtk3-module PackageKit-gstreamer-plugin PackageKit-command-not-found openssl-libs oddjob-gpupdate nvidia-xconfig nvidia-vaapi-driver nvidia-settings-470xx nvidia-settings nvidia-persistenced nvidia-modprobe nvidia-libXNVCtrl-devel nvidia-libXNVCtrl nvidia-kmod-common nvidia-kmod nvidia-driver-NVML nvidia-driver-NvFBCOpenGL nvidia-driver-libs nvidia-driver-devel nvidia-driver-cuda-libs nvidia-driver-cuda nvidia-driver nvidia-470xx-kmod ntfs-3g nss-softokn-freebl nsight-systems-2020.3.4 nsight-compute-2020.2.1 nodm nm-connection-editor nex NetworkManager-initscripts-ifcfg-rh ncurses-c++-libs mozilla-openh264 mopac7 mod_lua moby-engine mkpasswd mingw64-gcc mingw64-cpp mingw64-binutils mingw32-cpp mesa-vulkan-drivers mesa-dri-drivers memtest86+ mcpp malcontent-ui-libs libzstd-devel libzstd libwsman1 libwinpr libwbclient libwayland-server libwayland-egl libwayland-cursor libwayland-client libvmaf libvirt-daemon-kvm libvirt-daemon-driver-storage-zfs libvirt-daemon-driver-storage-sheepdog libvirt-daemon-driver-storage-scsi libvirt-daemon-driver-storage-rbd libvirt-daemon-driver-storage-mpath libvirt-daemon-driver-storage-logical libvirt-daemon-driver-storage-iscsi-direct libvirt-daemon-driver-storage-iscsi libvirt-daemon-driver-storage-gluster libvirt-daemon-driver-storage-disk libvirt-daemon-driver-storage-core libvirt-daemon-driver-storage libvirt-daemon-driver-secret libvirt-daemon-driver-qemu libvirt-daemon-driver-nwfilter libvirt-daemon-driver-nodedev libvirt-daemon-driver-network libvirt-daemon-driver-interface libvirt-daemon-config-network libuuid-devel libuuid libusb-compat-0.1 libusal libudisks2 libubsan libtsan libtracker-sparql libsysfs libstdc++-static libstdc++-devel libstdc++ libsss_sudo libsss_nss_idmap libsss_idmap libsss_certmap libsss_autofs libss libsmbclient libsmartcols libsbc libsane-hpaio libsane-airscan libreport-plugin-ureport libreport-plugin-reportuploader libreport-plugin-systemd-journal libreport-plugin-logger libreport-plugin-kerneloops libreport-plugin-bugzilla libreoffice-langpack-en libreoffice-help-en libref_array librbd1 librados2 libquadmath libquadmath-devel libqrcodegencpp libpskc libpmemobj libpmem libpkgconf libphodav libpath_utils libpasswdqc libobjc2 libnova libnvjpeg-devel-11-1 libnvjpeg-11-1 libnpp-devel-11-1 libnpp-11-1 libnghttp2 libmount-devel libmount libmcpp libkrunfw libkrun libkadm5 libjxl libjose libipa_hbac libini_config libicu libicu-devel libHX libGLEW libgfrpc0 libgs libgomp libglvnd-core-devel libglusterfs0 libglusterd0 libgfxdr0 libgfortran libgfapi0 libgcab1 libgcc libfsverity libfdt libfdisk libdhash libdav1d libcusparse-devel-11-1 libcusparse-11-1 libcusolver-devel-11-1 libcusolver-11-1 libcurl libcurand-11-1 libcufft-devel-11-1 libcurand-devel-11-1 libcufft-11-1 libcublas-devel-11-1 libcublas-11-1 libcom_err-devel libcom_err libcollection libbrotli libblockdev-plugins-all libblockdev-lvm-dbus libblkid libblkid-devel libbasicobjects libbabeltrace libattr libargon2 libaom libacl liba52 Last metadata expiration check: 0:07:42 ago on Tue 05 Jul 2022 12:45:53 PM PDT. kpartx kmod-nvidia-latest-dkms kile kiln kernel-core keyutils-libs-devel kernel-modules-extra jxl-pixbuf-loader jid iptables-legacy iptables-legacy-libs ipset ipp-usb Installed Packages initscripts-rename-device ini2toml info hypervvssd hypervkvpd hypervfcopyd httrack gvncpulse gvnc gtk-vnc2 gtk-update-icon-cache gstreamer1-plugin-openh264 grub2-tools-minimal grub2-tools-extra grub2-tools-efi grub2-efi-x64-cdboot grub2-efi-ia32-cdboot grub2-efi-x64 grub2-efi-ia32 grace golang-x-build gpgmepp gotags golist golang-x-perf golang-x-mobile golang-x-lint golang-x-exp golang-vbom-util golang-storj-drpc golang-mongodb-mongo-driver golang-rsc-pdf golang-modernc-golex golang-honnef-tools golang-jaytaylor-html2text golang-gopkg-src-d-git-4 golang-google-appengine golang-google-protobuf golang-gitlab-commonmark-linkify golang-github-zyedidia-highlight golang-github-zeebo-blake3 golang-github-ulikunitz-xz golang-github-twitchtv-twirp golang-github-twpayne-waypoint golang-github-tscholl2-siec golang-github-tklauser-numcpus golang-github-tomnomnom-xtermcolor golang-github-sourcegraph-syntaxhighlight golang-github-snappy golang-github-skip2-qrcode golang-github-shurcool-vfsgen golang-github-shulhan-bindata golang-github-segmentio-ksuid golang-github-rogpeppe-internal golang-github-rwcarlsen-goexif golang-github-rickb777-date golang-github-rclone-ftp golang-github-prometheus-node-exporter golang-github-quay-goval-parser golang-github-pquerna-ffjson golang-github-pierrec-lz4 golang-github-pierrre-geohash golang-github-pelletier-toml golang-github-pelletier-toml-2 golang-github-oklog-ulid golang-github-oneofone-xxhash golang-github-olekukonko-tablewriter golang-github-nxadm-tail golang-github-nicksnyder-i18n-2 golang-github-nbutton23-zxcvbn golang-github-nats-io-nkeys golang-github-mvo5-uboot golang-github-mmarkdown-mmark golang-github-multiformats-multihash golang-github-multiformats-multibase golang-github-msprev-fzf-bibtex golang-github-mrunalp-fileutils golang-github-mozillazg-pinyin golang-github-mock golang-github-morikuni-aec golang-github-microcosm-cc-bluemonday golang-github-mmcloughlin-avo golang-github-mgutz-ansi golang-github-mbndr-figlet4go golang-github-mattn-colorable golang-github-mattermost-xml-roundtrip-validator golang-github-martinhoefling-goxkcdpwgen golang-github-max-sum-base32768 golang-github-magefile-mage golang-github-lunixbochs-vtclean golang-github-lofanmi-pinyin golang-github-liamg-tml golang-github-leonelquinteros-gotext golang-github-leveldb golang-github-latex golang-github-kr-text golang-github-krishicks-yaml-patch golang-github-kalafut-imohash golang-github-jung-kurt-gofpdf golang-github-jmespath golang-github-insomniacslk-termhook golang-github-intel-goresctrl golang-github-hpcloud-tail golang-github-hashicorp-memdb golang-github-hashicorp-hclog golang-github-gucumber golang-github-google-wire golang-github-gorhill-cronexpr golang-github-google-jsonnet golang-github-gogo-protobuf golang-github-gogo-googleapis golang-github-gocolly-colly-2 golang-github-gobuffalo-here golang-github-docker-swarmkit golang-github-geertjohan-rice golang-github-gdamore-tcell golang-github-gdamore-tcell-2 golang-github-fvbommel-util golang-github-fernet golang-github-evanphx-json-patch golang-github-etcd-io-gofail golang-github-distribution-3 golang-github-docker-distribution golang-github-elazarl-bindata-assetfs golang-github-dustinkirkland-petname golang-github-dave-dst golang-github-dave-jennifer golang-github-d5-tengo-2 golang-github-crossdock golang-github-cpuguy83-md2man golang-github-client9-plaintext golang-github-client9-gospell golang-github-cilium-ebpf golang-github-christrenkamp-goxpath golang-github-chai2010-gettext golang-github-cespare-xxhash golang-github-c-bata-prompt golang-github-burntsushi-toml-test golang-github-burntsushi-xgb golang-github-burntsushi-toml golang-github-axgle-mahonia golang-github-aws-lambda golang-github-atotto-clipboard golang-github-apache-beam-2 golang-github-apparentlymart-textseg-13 golang-github-ajstarks-deck golang-github-akavel-rsrc golang-etcd-bbolt golang-bug-serial-1 gojq godoctor godotenv go-bindata goaltdns gnome-session-wayland-session gnome-phone-manager gnome-desktop4 gnome-bluetooth-libs gmailctl glx-utils glusterfs-client-xlators globus-rsl glibc glibc-langpack-en glibc-gconv-extra glibc-all-langpacks git-octopus ghostscript ghostscript-tools-printing ghostscript-tools-fonts ghc-charset genisoimage gcc-plugin-annobin gcc-gdb-plugin gawk-all-langpacks gawk fzf fwupd-plugin-uefi-capsule-data fwupd-plugin-modem-manager fwupd-plugin-flashrom freerdp-libs fpc flexiblas-openblas-openmp64 flexiblas-openblas-openmp flatpak-session-helper fftw-libs-double fedora-repos fedora-release fedora-obsolete-packages extra-enforcer-rules ephemeral-port-reserve enpass elements-alexandria elfutils-libs-debuginfo elfutils-libelf-devel elfutils-debuginfod-client-devel elfutils-debuginfod-client dx e3 duf dracut-config-rescue dontpanic dmtcp dietlibc device-mapper-libs device-mapper-event-libs device-mapper device-mapper-event deepin-api daxctl-libs cxl-libs cups-filters cuda-tools-11-1 cuda-visual-tools-11-1 cuda-toolkit-11-1 cuda-sanitizer-11-1 cuda-samples-11-1 cuda-nvvp-11-1 cuda-runtime-11-1 cuda-nvrtc-devel-11-1 cuda-nvtx-11-1 cuda-nvrtc-11-1 cuda-nvprune-11-1 cuda-nvprof-11-1 cuda-nvdisasm-11-1 cuda-nvml-devel-11-1 cuda-nvcc-11-1 cuda-nsight-systems-11-1 cuda-nsight-compute-11-1 cuda-nsight-11-1 cuda-memcheck-11-1 cuda-libraries-11-1 cuda-libraries-devel-11-1 cuda-gdb-11-1 cuda-drivers cuda-driver-devel-11-1 cuda-documentation-11-1 cuda-demo-suite-11-1 cuda-cupti-11-1 cuda-cuobjdump-11-1 cuda-cudart-devel-11-1 cuda-compiler-11-1 cuda-cudart-11-1 cuda-command-line-tools-11-1 cuda-11-1 cuda cswrap cscppc criu-libs cpp corosynclib clucene-contribs-lib clang-tools-extra clang-resource-filesystem chkrootkit cheat catatonit budgie-screensaver budgie-desktop-view bsdtar brlapi boost-program-options boost-openmpi-python3-devel boost-openmpi-devel boost-openmpi-python3 boost-mpich-python3 boost-mpich-python3-devel boost-mpich-devel boost-graph-openmpi boost-graph-mpich boost-date-time blis aws-c-common Available Packages avahi-ui-gtk3 audit-libs-devel astral allegro5 asciigraph annobin-plugin-gcc act age adwaita-qt6 adwaita-qt5 adwaita-gtk2-theme apache-commons-text anaconda-install-env-deps alternatives american-fuzzy-lop abseil-cpp abrt-retrace-client abrt-plugin-bodhi abrt-gui-libs abrt-addon-xorg abrt-addon-vmcore abrt-addon-pstoreoops abrt-addon-kerneloops abrt-addon-ccpp 3mux
Comment 5 Ben Woodard 2023-04-03 22:24:23 UTC
There are 4178 packages which seem to exhibit this problem.

The original problem with 3mux, absiel-cpp, and age seem to have gone away. The fingerprint of this problem is:

$ sudo dnf info ziffy
[sudo] password for ben: 
Updating Subscription Management repositories.
Last metadata expiration check: 0:58:22 ago on Mon 03 Apr 2023 02:22:07 PM PDT.
Available Packages
Name         : ziffy
Version      : 0
Release      : 0.10.20220615git8413c32.fc37
Architecture : x86_64
Size         : 1.4 M
Source       : golang-github-facebook-time-0-0.10.20220615git8413c32.fc37.src.rpm
Repository   : fedora
Summary      : CLI tool to triangulate switches that are not operating correctly as PTP Transparent Clocks.
URL          : https://github.com/facebook/time
License      : ASL 2.0
Description  : CLI tool to triangulate datacenter switches that are not operating correctly as PTP Transparent Clocks.
             : Ziffy sends PTP SYNC/DELAY_REQ packets between two hosts to get data about the topology.
             : It supports sending packets from a range of source ports to encourage hashing of
             : traffic over multiple paths. In case the hashing is done using only destination IP and source IP, Ziffy can
             : target multiple IPs in the same /64 prefix as the destination.

$ fedabipkgdiff --self-compare -a --from fc37 ziffy
Cannot find package ziffy.
Command exited with non-zero status 1
0.12user 0.01system 0:00.58elapsed 23%CPU (0avgtext+0avgdata 38876maxresident)k
0inputs+0outputs (0major+6381minor)pagefaults 0swaps

so the problem seems to be with the interaction with the fedora build system.