Bug 1653241

Summary: Missing conflict in spec
Product: Red Hat Enterprise Linux 8 Reporter: Jaroslav Mracek <jmracek>
Component: nssAssignee: nss-nspr-maint <nss-nspr-maint>
Status: CLOSED DUPLICATE QA Contact: BaseOS QE Security Team <qe-baseos-security>
Severity: low Docs Contact:
Priority: low    
Version: 8.0CC: astepano, dueno, hkario, nmavrogi, tmraz
Target Milestone: rc   
Target Release: 8.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-12-12 15:26:43 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Jaroslav Mracek 2018-11-26 11:11:33 UTC
Description of problem:
I can install nss.i686 and nss.x86_64 with different version on same system, but it results in file conflict:

Error: Transaction check error:
  file /usr/share/man/man5/cert8.db.5.gz conflicts between attempted installs of nss-3.39.0-1.0.el8.i686 and nss-3.39.0-1.1.el8.x86_64
  file /usr/share/man/man5/cert9.db.5.gz conflicts between attempted installs of nss-3.39.0-1.0.el8.i686 and nss-3.39.0-1.1.el8.x86_64
  file /usr/share/man/man5/key3.db.5.gz conflicts between attempted installs of nss-3.39.0-1.0.el8.i686 and nss-3.39.0-1.1.el8.x86_64
  file /usr/share/man/man5/key4.db.5.gz conflicts between attempted installs of nss-3.39.0-1.0.el8.i686 and nss-3.39.0-1.1.el8.x86_64
  file /usr/share/man/man5/pkcs11.txt.5.gz conflicts between attempted installs of nss-3.39.0-1.0.el8.i686 and nss-3.39.0-1.1.el8.x86_64
  file /usr/share/man/man5/secmod.db.5.gz conflicts between attempted installs of nss-3.39.0-1.0.el8.i686 and nss-3.39.0-1.1.el8.x86_64

Dnf cannot resolve this conflict according metadata, therefore transaction fails after downloading of rpm.

Line like this should solve the issue:
Conflicts: nss < %{version}-%{release}

Comment 1 Daiki Ueno 2018-11-26 14:09:00 UTC
Thank you for the report and the suggestion.

> Conflicts: nss < %{version}-%{release}

Does that mean there should be only a single NSS version installable on the system, whether it is multilib or not?

It seems we previously allowed installation of parallel versions of NSS for the nss-pem dependency on NSS (bug 1316546 comment 11), while the package is gone in RHEL-8 (bug 1542409).

Comment 2 Hubert Kario 2018-12-06 13:07:33 UTC
isn't there a dedicated flag for saying that the secondary package needs to be at the same version as the primary package?

this:

> Conflicts: nss < %{version}-%{release}

seems to abuse the conflict resolution...

also, will it work for preventing update of just the secondary package?

Comment 3 Tomas Mraz 2018-12-06 13:18:08 UTC
Please do not add non-sensical Conflicts into multilib spec files to workaround dnf deficiencies! This should be clearly rejected!

Comment 4 Hubert Kario 2018-12-06 13:30:15 UTC
correction, that looks like a deficiency of dnf, see https://pagure.io/packaging-committee/issue/834 and bug 1653683

Comment 5 Daiki Ueno 2018-12-12 15:26:43 UTC

*** This bug has been marked as a duplicate of bug 1640985 ***