Bug 1791843
Summary: | "yum updateinfo" should apply a modular filter to the package listing | ||
---|---|---|---|
Product: | Red Hat Enterprise Linux 8 | Reporter: | jcastran |
Component: | dnf | Assignee: | Packaging Maintenance Team <packaging-team-maint> |
Status: | CLOSED DUPLICATE | QA Contact: | swm-qe |
Severity: | high | Docs Contact: | |
Priority: | medium | ||
Version: | 8.1 | CC: | fblinuxos, james.antill, jjansky, jplesnik, kwalker, mdomonko, ppisar, sujagtap, tcallawa |
Target Milestone: | rc | Keywords: | FutureFeature, Triaged |
Target Release: | 8.0 | ||
Hardware: | All | ||
OS: | All | ||
Whiteboard: | |||
Fixed In Version: | Doc Type: | If docs needed, set a value | |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2020-04-29 07:30:39 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: | |||
Bug Depends On: | |||
Bug Blocks: | 1654708, 1825061 |
Description
jcastran
2020-01-16 15:27:59 UTC
I believe you use RHEL 8.1. Not 8.2. The mentioned erratum is for RHEL-8.1. (In reply to jcastran from comment #0) > Description of problem: > The packages from https://access.redhat.com/errata/RHBA-2019:3337 are not > accessible to any system without disabling module filtering. > They are accessible. But not all of them at the same time. That's on purpose. Please continue reading. > Steps to Reproduce: > 1. yum list perl-DBD-SQLite > > Actual results: > Latest shows as > perl-DBD-SQLite.x86_64 1.58-2.module+el8.1.0+2940+f62455ee > rhel-8-for-x86_64-appstream-rpms > This the latest package built for Perl 5.26. > Expected results: > Latest shows as > perl-DBD-SQLite.x86_64 1.58-2.module+el8.1.0+2940+55ca6856 > rhel-8-for-x86_64-appstream-rpms > This is the latest package built for Perl 5.24. > Additional info: > # yum module list perl-DBD-SQLite > Red Hat Enterprise Linux 8 for x86_64 - AppStream (RPMs) > Name Stream Profiles Summary > > perl-DBD-SQLite 1.58 [d][e] common [d] SQLite > DBI driver > That's good. But important information in this case is what perl stream you have active. What does display the following command? # yum module list perl I believe it will report perl:5.26 as the active one in contrast to perl:5.24. E.g. like this: Name Stream Profiles Summary perl 5.24 common [d], minimal Practical Extraction and Report Language perl 5.26 [d] common [d], minimal Practical Extraction and Report Language And that means that modular packages built for Perls other than 5.26 will be hidden. If you enabled perl:5.24, yum list would show the other perl-DBD-SQLite package. What you experience here is a modular filtering based on the modular dependencies. There are two Perl streams perl:5.24 and perl:5.26. There is one perl-DBD-SQLite stream perl-DBD-SQLite:1.58. The stream is built twice. Each time for a Perl. Each of them is compatible only to the one Perl, but incompatible to the other Perl. In order not to mix the packages, they are split into two sets called contexts. You can see all the contexts (and all module versions) with "yum module info perl-DBD-SQLite:1.58" command. You will see modules with the same name, stream, and version, but diffing in context there. You will also see the packages there. What you want's see there is the modular dependency on particular perl. This is deficiency in YUM that will be corrected in the future. But you can add "-v" option to see a debugging output where the perl dependency is listed. > # yum list perl-DBD-SQlite --showduplicates > Installed Packages > perl-DBD-SQLite.x86_64 1.58-2.module+el8.1.0+2940+f62455ee > @rhel-8-for-x86_64-appstream-rpms > Available Packages > perl-DBD-SQLite.x86_64 1.58-1.module+el8+2519+ab644fb0 > rhel-8-for-x86_64-appstream-rpms > perl-DBD-SQLite.x86_64 1.58-2.module+el8.1.0+2940+f62455ee > rhel-8-for-x86_64-appstream-rpms > This also hides the incompatible packages as designed. And it also confirms that you have the latest perl-DBD-SQlite package already on you system and that the erratum was successfully installed. > Here we see that by using module_hotfixes we can see the package. > > # yum list perl-DBD-SQlite --showduplicates > --setopt=rhel-8-for-x86_64-appstream-rpms.module_hotfixes=1 > Installed Packages > perl-DBD-SQLite.x86_64 1.58-2.module+el8.1.0+2940+f62455ee > @rhel-8-for-x86_64-appstream-rpms > Available Packages > perl-DBD-SQLite.x86_64 1.58-1.module+el8+2519+ab644fb0 > rhel-8-for-x86_64-appstream-rpms > perl-DBD-SQLite.x86_64 1.58-1.module+el8+2519+e351b2a7 > rhel-8-for-x86_64-appstream-rpms > perl-DBD-SQLite.x86_64 1.58-2.module+el8.1.0+2940+f62455ee > rhel-8-for-x86_64-appstream-rpms > perl-DBD-SQLite.x86_64 1.58-2.module+el8.1.0+2940+55ca6856 > rhel-8-for-x86_64-appstream-rpms Enabling module_hotfixes on a repository makes the repository to be exempted from modular filtering. That's handy for installing a hotfixes for modules and for searching among all packages regardless status of a modular stream and compatibility of a context to whom they belong to. But I discourage you from using for other purposes. If I summarize this issue, everything works as designed. If it does not match your expectation, could you please describe your use case? I.e. What are you trying to achieve? By the way you should get the same experience (yum list) with RHEL 8.0. There are also two contexts of perl-DBD-SQLite for two Perls. In other words it's not specific to perl-DBD-SQLite update in RHEL 8.1. I will move this report to "dnf" component because it's DNF (via yum command) that implements the modular filtering. I believe dnf maintainers will reject this report because it works as designed. If you need e.g. a more user-friendly way of listing all existing packages in a repository instead of setting module_hotfixes option, please tell us here. I see the bug as a duplicate of 1804234. *** This bug has been marked as a duplicate of bug 1804234 *** |