Bug 1818118

Summary: openvswitch: yum update using wrapper file to allow for stream change fails in RHEL-8
Product: Red Hat Enterprise Linux 8 Reporter: Rick Alongi <ralongi>
Component: dnfAssignee: Jaroslav Mracek <jmracek>
Status: CLOSED ERRATA QA Contact: Jan Blazek <jblazek>
Severity: unspecified Docs Contact:
Priority: medium    
Version: 8.2CC: atragler, ctrautma, dstreit, james.antill, jhsiao, pkratoch
Target Milestone: rcKeywords: Triaged
Target Release: 8.0   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: dnf-4.7.0-1.el8 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2021-11-09 19:52:16 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: 1951411    
Bug Blocks:    
Attachments:
Description Flags
OVS log files none

Description Rick Alongi 2020-03-27 18:50:40 UTC
Created attachment 1674129 [details]
OVS log files

Description of problem:

The yum update command fails to update the openvswitch package when pointing to a wrapper file to allow for stream change.

Version-Release number of selected component (if applicable):

FDP 20.C

How reproducible:

Always


Steps to Reproduce:
1. Install starting version of openvswitch (ex. openvswitch2.11)
2. Create wrapper file (ex. product-openvswitch-2.13-1.el8.noarch.rpm) and add it to a local repo
3. Perform: yum -y update product-openvswitch

Actual results:

Error:

Package product-openvswitch available, but not installed.
No match for argument: product-openvswitch
Error: No packages marked for upgrade.

Expected results:

The openvswitch package is successfuly updated to the new stream.


Additional info:

- "yum -y install product-openvswitch" is successful.
- "yum -y update product-openvswitch" is successful in RHEL-7 environment.

Output from RHEL-8 test:

[root@impairment2 ~]# uname -r
4.18.0-147.el8.x86_64

[root@impairment2 ~]# rpm -qa | grep openvswitch
openvswitch2.11-2.11.0-48.el8fdp.x86_64
openvswitch-selinux-extra-policy-1.0-19.el8fdp.noarch

[root@impairment2 ~]# ovs-vsctl show
f198f5cf-fd6c-4945-a8da-7868e31bb713
    ovs_version: "2.11.0"

[root@impairment2 ~]# yum info product-openvswitch
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Last metadata expiration check: 0:03:09 ago on Fri 27 Mar 2020 02:11:57 PM EDT.
Available Packages
Name         : product-openvswitch
Version      : 2.13
Release      : 1.el8
Architecture : noarch
Size         : 6.3 k
Source       : product-openvswitch-2.13-1.el8.src.rpm
Repository   : mylocalrepo
Summary      : Meta package requiring specific openvswitch branch
License      : GPL
Description  : This is a meta package to require the correct openvswitch version
             : for the product.

[root@impairment2 ~]# cat ~/rpmbuild/SPECS/product-openvswitch.spec
Name: product-openvswitch
Version: 2.13
Release: 1%{?dist}
Summary: Meta package requiring specific openvswitch branch
Group: System Environment/Daemons
License: GPL
BuildArch: noarch

Obsoletes: openvswitch < 2.13
Obsoletes: openvswitch2.10
Obsoletes: openvswitch2.11

Requires: openvswitch2.13

%description
This is a meta package to require the correct openvswitch version
for the product.

%files

%changelog
* Fri Mar 27 2020 Rick Alongi <ralongi> 2.13-1
- Created the package

[root@impairment2 ~]# yum -y update product-openvswitch
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Last metadata expiration check: 0:06:58 ago on Fri 27 Mar 2020 02:11:57 PM EDT.
Package product-openvswitch available, but not installed.
No match for argument: product-openvswitch
Error: No packages marked for upgrade.

[root@impairment2 ~]# yum -y install product-openvswitch
Updating Subscription Management repositories.
Unable to read consumer identity
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Last metadata expiration check: 0:07:44 ago on Fri 27 Mar 2020 02:11:57 PM EDT.
Dependencies resolved.
================================================================================
 Package                 Arch       Version               Repository       Size
================================================================================
Installing:
 product-openvswitch     noarch     2.13-1.el8            mylocalrepo     6.3 k
     replacing  openvswitch2.11.x86_64 2.11.0-48.el8fdp
Installing dependencies:
 openvswitch2.13         x86_64     2.13.0-9.el8fdp       mylocalrepo      13 M

Transaction Summary
================================================================================
Install  2 Packages

Total size: 13 M
Downloading Packages:
Running transaction check
Transaction check succeeded.
Running transaction test
Transaction test succeeded.
Running transaction
  Preparing        :                                                        1/1 
  Running scriptlet: openvswitch2.13-2.13.0-9.el8fdp.x86_64                 1/1 
  Running scriptlet: openvswitch2.13-2.13.0-9.el8fdp.x86_64                 1/3 
  Installing       : openvswitch2.13-2.13.0-9.el8fdp.x86_64                 1/3 
  Running scriptlet: openvswitch2.13-2.13.0-9.el8fdp.x86_64                 1/3 
  Installing       : product-openvswitch-2.13-1.el8.noarch                  2/3 
  Running scriptlet: openvswitch2.11-2.11.0-48.el8fdp.x86_64                3/3 
  Obsoleting       : openvswitch2.11-2.11.0-48.el8fdp.x86_64                3/3 
  Running scriptlet: openvswitch2.11-2.11.0-48.el8fdp.x86_64                3/3 
  Verifying        : openvswitch2.13-2.13.0-9.el8fdp.x86_64                 1/3 
  Verifying        : product-openvswitch-2.13-1.el8.noarch                  2/3 
  Verifying        : openvswitch2.11-2.11.0-48.el8fdp.x86_64                3/3 
Installed products updated.

Installed:
  product-openvswitch-2.13-1.el8.noarch  openvswitch2.13-2.13.0-9.el8fdp.x86_64 

Complete!

======================================================================

Output from RHEL-7 test:

[root@impairment1 ~]# uname -r
3.10.0-1062.12.1.el7.x86_64

[root@impairment1 ~]# rpm -qa | grep openvswitch
openvswitch2.11-2.11.0-48.el7fdp.x86_64
openvswitch-selinux-extra-policy-1.0-15.el7fdp.noarch

[root@impairment1 ~]# ovs-vsctl show
01af4bb9-345a-43af-8a30-da91dbfa7c1b
    ovs_version: "2.11.0"

[root@impairment1 ~]# yum info product-openvswitch
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Available Packages
Name        : product-openvswitch
Arch        : noarch
Version     : 2.13
Release     : 1.el7
Size        : 1.9 k
Repo        : mylocalrepo
Summary     : Meta package requiring specific openvswitch branch
License     : GPL
Description : This is a meta package to require the correct openvswitch version
            : for the product.

[root@impairment1 ~]# cat ~/rpmbuild/SPECS/product-openvswitch.spec
Name: product-openvswitch
Version: 2.13
Release: 1%{?dist}
Summary: Meta package requiring specific openvswitch branch
Group: System Environment/Daemons
License: GPL
BuildArch: noarch

Obsoletes: openvswitch < 2.13
Obsoletes: openvswitch2.10
Obsoletes: openvswitch2.11

Requires: openvswitch2.13

%description
This is a meta package to require the correct openvswitch version
for the product.

%files

%changelog
* Fri Mar 27 2020 Rick Alongi <ralongi> 2.13-1
- Created the package

[root@impairment1 ~]# yum -y update product-openvswitch
Loaded plugins: product-id, search-disabled-repos, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
Resolving Dependencies
--> Running transaction check
---> Package openvswitch2.11.x86_64 0:2.11.0-48.el7fdp will be obsoleted
---> Package product-openvswitch.noarch 0:2.13-1.el7 will be obsoleting
--> Processing Dependency: openvswitch2.13 for package: product-openvswitch-2.13-1.el7.noarch
--> Running transaction check
---> Package openvswitch2.13.x86_64 0:2.13.0-10.el7fdp will be installed
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package                 Arch       Version               Repository       Size
================================================================================
Installing:
 product-openvswitch     noarch     2.13-1.el7            mylocalrepo     1.9 k
     replacing  openvswitch2.11.x86_64 2.11.0-48.el7fdp
Installing for dependencies:
 openvswitch2.13         x86_64     2.13.0-10.el7fdp      mylocalrepo     5.4 M

Transaction Summary
================================================================================
Install  1 Package (+1 Dependent package)

Total download size: 5.4 M
Downloading packages:
--------------------------------------------------------------------------------
Total                                              200 MB/s | 5.4 MB  00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : openvswitch2.13-2.13.0-10.el7fdp.x86_64                      1/3 
  Installing : product-openvswitch-2.13-1.el7.noarch                        2/3 
  Erasing    : openvswitch2.11-2.11.0-48.el7fdp.x86_64                      3/3 
  Verifying  : product-openvswitch-2.13-1.el7.noarch                        1/3 
  Verifying  : openvswitch2.13-2.13.0-10.el7fdp.x86_64                      2/3 
  Verifying  : openvswitch2.11-2.11.0-48.el7fdp.x86_64                      3/3 

Installed:
  product-openvswitch.noarch 0:2.13-1.el7                                       

Dependency Installed:
  openvswitch2.13.x86_64 0:2.13.0-10.el7fdp                                     

Replaced:
  openvswitch2.11.x86_64 0:2.11.0-48.el7fdp                                     

Complete!

Comment 1 Rick Alongi 2020-05-01 13:44:25 UTC
Behavior tracked in this BZ has also been observed in FDP 20.D testing.

Comment 2 Timothy Redaelli 2020-05-29 12:00:43 UTC
Reassigning to dnf since on RHEL8 dnf is used and the behavior is different than yum

Comment 6 Jaroslav Mracek 2021-03-16 08:33:00 UTC
I created a pull-request that change handling of obsoleters for upgrade command: https://github.com/rpm-software-management/dnf/pull/1746

CI-tests: https://github.com/rpm-software-management/ci-dnf-stack/pull/974

Comment 14 errata-xmlrpc 2021-11-09 19:52:16 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory (Moderate: dnf security and bug fix update), and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHSA-2021:4464