Note: This bug is displayed in read-only format because
the product is no longer active in Red Hat Bugzilla.
RHEL Engineering is moving the tracking of its product development work on RHEL 6 through RHEL 9 to Red Hat Jira (issues.redhat.com). If you're a Red Hat customer, please continue to file support cases via the Red Hat customer portal. If you're not, please head to the "RHEL project" in Red Hat Jira and file new tickets here. Individual Bugzilla bugs in the statuses "NEW", "ASSIGNED", and "POST" are being migrated throughout September 2023. Bugs of Red Hat partners with an assigned Engineering Partner Manager (EPM) are migrated in late September as per pre-agreed dates. Bugs against components "kernel", "kernel-rt", and "kpatch" are only migrated if still in "NEW" or "ASSIGNED". If you cannot log in to RH Jira, please consult article #7032570. That failing, please send an e-mail to the RH Jira admins at rh-issues@redhat.com to troubleshoot your issue as a user management inquiry. The email creates a ServiceNow ticket with Red Hat. Individual Bugzilla bugs that are migrated will be moved to status "CLOSED", resolution "MIGRATED", and set with "MigratedToJIRA" in "Keywords". The link to the successor Jira issue will be found under "Links", have a little "two-footprint" icon next to it, and direct you to the "RHEL project" in Red Hat Jira (issue links are of type "https://issues.redhat.com/browse/RHEL-XXXX", where "X" is a digit). This same link will be available in a blue banner at the top of the page informing you that that bug has been migrated.
Description of problem:
yum install poppler is incorrectly resolving dependencies. When we install poppler, we get a lower version of nss.
> NOTE Ubi systems will only see this if they also see a full repo such as the CDN since ubi repos don't have multiple versions of nss
> NOTE this is more widespread than just poppler and nss. This is just my example
**Reproducer Steps**
# podman run --rm -it --entrypoint=bash registry.access.redhat.com/ubi8/ubi-minimal:8.7-923
# microdnf install yum
[root@7bfe6edc1e56 /]# yum install poppler --assumeno
Last metadata expiration check: 2:15:55 ago on Thu Dec 1 17:28:23 2022.
Dependencies resolved.
==============================================================================================
Package Arch Version Repository Size
==============================================================================================
Installing:
poppler x86_64 20.11.0-5.el8 rhel-8-for-x86_64-appstream-rpms 1.1 M
Installing dependencies:
dejavu-fonts-common noarch 2.35-7.el8 rhel-8-for-x86_64-baseos-rpms 74 k
dejavu-sans-fonts noarch 2.35-7.el8 rhel-8-for-x86_64-baseos-rpms 1.5 M
fontconfig x86_64 2.13.1-4.el8 rhel-8-for-x86_64-baseos-rpms 274 k
fontpackages-filesystem noarch 1.44-22.el8 rhel-8-for-x86_64-baseos-rpms 16 k
freetype x86_64 2.9.1-9.el8 rhel-8-for-x86_64-baseos-rpms 394 k
jbigkit-libs x86_64 2.1-14.el8 rhel-8-for-x86_64-appstream-rpms 55 k
lcms2 x86_64 2.9-2.el8 rhel-8-for-x86_64-appstream-rpms 165 k
libjpeg-turbo x86_64 1.5.3-12.el8 rhel-8-for-x86_64-appstream-rpms 157 k
libpng x86_64 2:1.6.34-5.el8 rhel-8-for-x86_64-baseos-rpms 126 k
libtiff x86_64 4.0.9-23.el8 rhel-8-for-x86_64-appstream-rpms 189 k
nspr x86_64 4.34.0-3.el8_6 rhel-8-for-x86_64-appstream-rpms 143 k
nss x86_64 3.44.0-15.el8 rhel-8-for-x86_64-appstream-rpms 703 k <<<<<
nss-softokn x86_64 3.79.0-10.el8_6 rhel-8-for-x86_64-appstream-rpms 1.2 M
nss-softokn-freebl x86_64 3.79.0-10.el8_6 rhel-8-for-x86_64-appstream-rpms 398 k
nss-sysinit x86_64 3.44.0-15.el8 rhel-8-for-x86_64-appstream-rpms 70 k
nss-util x86_64 3.79.0-10.el8_6 rhel-8-for-x86_64-appstream-rpms 139 k
openjpeg2 x86_64 2.4.0-5.el8 rhel-8-for-x86_64-appstream-rpms 165 k
poppler-data noarch 0.4.9-1.el8 rhel-8-for-x86_64-appstream-rpms 2.1 M
[root@7bfe6edc1e56 /]# yum downgrade libsolv
Downgraded:
libdnf-0.63.0-8.2.el8_6.x86_64 libsolv-0.7.20-1.el8.x86_64
python3-hawkey-0.63.0-8.2.el8_6.x86_64 python3-libdnf-0.63.0-8.2.el8_6.x86_64
Complete!
[root@7bfe6edc1e56 /]# yum install poppler --assumeno
Last metadata expiration check: 2:17:29 ago on Thu Dec 1 17:28:23 2022.
Dependencies resolved.
==============================================================================================
Package Arch Version Repository Size
==============================================================================================
Installing:
poppler x86_64 20.11.0-5.el8 rhel-8-for-x86_64-appstream-rpms 1.1 M
Installing dependencies:
cpio x86_64 2.12-11.el8 rhel-8-for-x86_64-baseos-rpms 266 k
crypto-policies-scripts
noarch 20211116-1.gitae470d6.el8 rhel-8-for-x86_64-baseos-rpms 83 k
dejavu-fonts-common noarch 2.35-7.el8 rhel-8-for-x86_64-baseos-rpms 74 k
dejavu-sans-fonts noarch 2.35-7.el8 rhel-8-for-x86_64-baseos-rpms 1.5 M
dracut x86_64 049-209.git20220815.el8 rhel-8-for-x86_64-baseos-rpms 378 k
file x86_64 5.33-21.el8 rhel-8-for-x86_64-baseos-rpms 77 k
findutils x86_64 1:4.6.0-20.el8 rhel-8-for-x86_64-baseos-rpms 528 k
fontconfig x86_64 2.13.1-4.el8 rhel-8-for-x86_64-baseos-rpms 274 k
fontpackages-filesystem
noarch 1.44-22.el8 rhel-8-for-x86_64-baseos-rpms 16 k
freetype x86_64 2.9.1-9.el8 rhel-8-for-x86_64-baseos-rpms 394 k
gettext x86_64 0.19.8.1-17.el8 rhel-8-for-x86_64-baseos-rpms 1.1 M
gettext-libs x86_64 0.19.8.1-17.el8 rhel-8-for-x86_64-baseos-rpms 313 k
grub2-common noarch 1:2.02-142.el8 rhel-8-for-x86_64-baseos-rpms 894 k
grub2-tools x86_64 1:2.02-142.el8 rhel-8-for-x86_64-baseos-rpms 2.0 M
grub2-tools-minimal x86_64 1:2.02-142.el8 rhel-8-for-x86_64-baseos-rpms 212 k
jbigkit-libs x86_64 2.1-14.el8 rhel-8-for-x86_64-appstream-rpms 55 k
kbd-legacy noarch 2.0.4-10.el8 rhel-8-for-x86_64-baseos-rpms 481 k
kbd-misc noarch 2.0.4-10.el8 rhel-8-for-x86_64-baseos-rpms 1.5 M
kmod x86_64 25-19.el8 rhel-8-for-x86_64-baseos-rpms 126 k
lcms2 x86_64 2.9-2.el8 rhel-8-for-x86_64-appstream-rpms 165 k
libcroco x86_64 0.6.12-4.el8_2.1 rhel-8-for-x86_64-baseos-rpms 113 k
libgomp x86_64 8.5.0-15.el8 rhel-8-for-x86_64-baseos-rpms 207 k
libjpeg-turbo x86_64 1.5.3-12.el8 rhel-8-for-x86_64-appstream-rpms 157 k
libkcapi x86_64 1.2.0-2.el8 rhel-8-for-x86_64-baseos-rpms 48 k
libkcapi-hmaccalc x86_64 1.2.0-2.el8 rhel-8-for-x86_64-baseos-rpms 31 k
libpng x86_64 2:1.6.34-5.el8 rhel-8-for-x86_64-baseos-rpms 126 k
libtiff x86_64 4.0.9-23.el8 rhel-8-for-x86_64-appstream-rpms 189 k
nspr x86_64 4.34.0-3.el8_6 rhel-8-for-x86_64-appstream-rpms 143 k
nss x86_64 3.79.0-10.el8_6 rhel-8-for-x86_64-appstream-rpms 747 k <<<<<
nss-softokn x86_64 3.79.0-10.el8_6 rhel-8-for-x86_64-appstream-rpms 1.2 M
nss-softokn-freebl x86_64 3.79.0-10.el8_6 rhel-8-for-x86_64-appstream-rpms 398 k
nss-sysinit x86_64 3.79.0-10.el8_6 rhel-8-for-x86_64-appstream-rpms 75 k
nss-util x86_64 3.79.0-10.el8_6 rhel-8-for-x86_64-appstream-rpms 139 k
openjpeg2 x86_64 2.4.0-5.el8 rhel-8-for-x86_64-appstream-rpms 165 k
os-prober x86_64 1.74-9.el8 rhel-8-for-x86_64-baseos-rpms 51 k
poppler-data noarch 0.4.9-1.el8 rhel-8-for-x86_64-appstream-rpms 2.1 M
procps-ng x86_64 3.3.15-9.el8 rhel-8-for-x86_64-baseos-rpms 329 k
systemd-udev x86_64 239-68.el8 rhel-8-for-x86_64-baseos-rpms 1.6 M
which x86_64 2.21-18.el8 rhel-8-for-x86_64-baseos-rpms 50 k
xz x86_64 5.2.4-4.el8_6 rhel-8-for-x86_64-baseos-rpms 153 k
Installing weak dependencies:
grubby x86_64 8.40-47.el8 rhel-8-for-x86_64-baseos-rpms 50 k
hardlink x86_64 1:1.3-6.el8 rhel-8-for-x86_64-baseos-rpms 29 k
kbd x86_64 2.0.4-10.el8 rhel-8-for-x86_64-baseos-rpms 390 k
kpartx x86_64 0.8.4-28.el8_7.1 rhel-8-for-x86_64-baseos-rpms 117 k
memstrack x86_64 0.2.4-2.el8 rhel-8-for-x86_64-baseos-rpms 51 k
pigz x86_64 2.4-4.el8 rhel-8-for-x86_64-baseos-rpms 79 k
Transaction Summary
==============================================================================================
Install 47 Packages
Version-Release number of selected component (if applicable):
libsolv-0.7.20-3.el8.x86_64
How reproducible:
Everytime
Expected results:
The latest dependency should be installed.
Additional info:
This is marked urgent as this is more widespread than just a poppler dependency. For another example, installing nss for instance results in crypto-policies being downgraded.
=======================================
[root@e10d4c77f44a /]# yum install nss
Upgrading:
nss x86_64 3.79.0-10.el8_6 rhel-8-for-x86_64-appstream-rpms 747 k
<snip>
Downgrading:
crypto-policies noarch 20191128-2.git23e1bf1.el8 rhel-8-for-x86_64-baseos-rpms 103 k
=======================================
It appears this was caused by
- https://bugzilla.redhat.com/show_bug.cgi?id=1988117
- https://pkgs.devel.redhat.com/cgit/rpms/libsolv/tree/0003-Improve-choice-rule-generation.patch?h=rhel-8.7.0&id=5b1f0d9db3c5329323f02d187b4b70cfd692d398
**Workaround**
# microdnf install <pkg>
# microdnf update
OR with yum, if you downgrade libsolv to 0.7.20-1.el8
# yum downgrade libsolv-0.7.20-1.el8
I'm still working through the why, but this is due to the following patch that was included in libsolv-0.7.20-3:
From fd52342713012ec111b1559fa1647f88768fa782 Mon Sep 17 00:00:00 2001
From: Michael Schroeder <mls>
Date: Wed, 16 Mar 2022 15:17:20 +0100
Subject: [PATCH 3/3] Improve choice rule generation
New strategy: take the package update map into account when creating
choice rules. This simplifies the code quite a bit. Also check at
the end of the solving if a choice rule led to two packages providing
the same thing. In that case, break the choice rule and re-run the
solver.
---
src/rules.c | 169 +++++++++++++--------------------------------------
src/solver.c | 45 ++++++++++++++
2 files changed, 88 insertions(+), 126 deletions(-)
Reverting that single patch results in the correct behaviour.