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.
Bug 840543 - yum upgrade frequently fails with misleading 'Protected multilib versions...' error
Summary: yum upgrade frequently fails with misleading 'Protected multilib versions...'...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: yum
Version: 6.3
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: rc
: ---
Assignee: James Antill
QA Contact: Patrik Kis
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-07-16 14:51 UTC by Frantisek Reznicek
Modified: 2015-11-16 01:14 UTC (History)
3 users (show)

Fixed In Version: yum-3.2.29-31.el6
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-02-21 10:12:49 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)
yum upgrade terminal transcript (4.64 KB, application/x-gzip)
2012-07-16 14:54 UTC, Frantisek Reznicek
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Red Hat Product Errata RHBA-2013:0406 0 normal SHIPPED_LIVE yum bug fix and enhancement update 2013-02-20 20:50:44 UTC

Description Frantisek Reznicek 2012-07-16 14:51:53 UTC
Description of problem:

Yum upgrade frequently fails with misleading 'Protected multilib versions...' error.

Let's have following situation:
An upgrade from version A to version B.
In B package set there is one/multiple missing packages.

Above described scenario currently leads to misleading error:
  ...
  Error: Protected multilib versions: qpid-cpp-server-0.14-16.el6.x86_64 != qpid-cpp-server-0.14-14.el6_2.i686
  Error: Protected multilib versions: qpid-cpp-client-0.14-14.el6_2.i686 != qpid-cpp-client-0.14-16.el6.x86_64
   You could try using --skip-broken to work around the problem
   You could try running: rpm -Va --nofiles --nodigest


Note that neither qpid-cpp-server-0.14-14.el6_2.i686 nor qpid-cpp-client-0.14-14.el6_2.i686 are installed.


Looking more to the root of problem I found rootcause in heavy verbose yum log:
  ...
  Resolving Dependencies
  --> Running transaction check
  ---> Package qpid-cpp-client.x86_64 0:0.14-14.el6_2 will be updated
  Checking deps for qpid-cpp-client.x86_64 0:0.14-14.el6_2 - ud
  rh-qpid-cpp-tests-0.14-14.el6_2.x86_64 requires: qpid-cpp-client = 0.14-14.el6_2
  --> Processing Dependency: qpid-cpp-client = 0.14-14.el6_2 for package: rh-qpid-cpp-tests-0.14-14.el6_2.x86_64
  Potential Provider: qpid-cpp-client.x86_64 0:0.14-14.el6_2
  Mode is ud for provider of qpid-cpp-client = 0.14-14.el6_2: qpid-cpp-client.x86_64 0:0.14-14.el6_2
  Mode for pkg providing qpid-cpp-client = 0.14-14.el6_2: ud
  Trying to update rh-qpid-cpp-tests-0.14-14.el6_2.x86_64 to resolve dep
  No update paths found for rh-qpid-cpp-tests-0.14-14.el6_2.x86_64. Failure!
  ...

Yum should not confuse users. In this situation there is missing one package (rh-qpid-cpp-tests-0.14-14) in B package set NOT a multilib trouble.

Yum package dependency resolver started to behave this (new) way on rhel6.3.


Version-Release number of selected component (if applicable):
yum-3.2.29-30.el6.noarch

How reproducible:
100%

Steps to Reproduce:
1. Let's have two set of packages A (old) and B (new)
2. delete one of packages from B
3. try to do upgrade / localinstall to upgrade from A to B
  
Actual results:
Misleading multilib issue is reported.

Expected results:
The missing package should be reported.


Additional info:

Comment 2 Frantisek Reznicek 2012-07-16 14:54:17 UTC
Created attachment 598473 [details]
yum upgrade terminal transcript

The attached verbose off/on yum upgrade terminal log shows misleading error message.

Comment 3 Frantisek Reznicek 2012-07-17 07:32:00 UTC
A small correction in desc:

> 
> Yum should not confuse users. In this situation there is missing one package
> (rh-qpid-cpp-tests-0.14-14) in B package set NOT a multilib trouble.
> 

Yum should not confuse users. In this situation there is missing corresponding rh-qpid-cpp-tests package in B package set (rh-qpid-cpp-tests-0.14-16 which is not available) NOT a multilib trouble.

Comment 4 James Antill 2012-07-31 20:37:39 UTC
Added a giant text message upstream about what protected_mutilib errors usualy mean. Hopefully that will point people to the root cause.

Comment 5 Karel Srot 2012-08-09 14:37:15 UTC
Hi James, could you please point me to the upstream change?

Comment 9 Patrik Kis 2012-10-12 13:55:09 UTC
Hi Frantisek,

I'm trying to reproduce the reported issue but I'm not able.
You can find below what I tried.
Do I miss something? What packages was installed on you test system?
The verbose mode also do not provide much more help.

1. Install the "old" packages for qpid-cpp
# rpm -qa | grep qpid-cpp
qpid-cpp-client-0.14-14.el6_2.x86_64
qpid-cpp-server-xml-0.14-14.el6_2.x86_64
qpid-cpp-server-rdma-0.14-14.el6_2.x86_64
qpid-cpp-client-devel-docs-0.14-14.el6_2.noarch
qpid-cpp-client-ssl-0.14-14.el6_2.x86_64
qpid-cpp-server-store-0.14-14.el6_2.x86_64
qpid-cpp-client-devel-0.14-14.el6_2.x86_64
qpid-cpp-server-ssl-0.14-14.el6_2.x86_64
rh-qpid-cpp-tests-0.14-14.el6_2.x86_64
qpid-cpp-client-rdma-0.14-14.el6_2.x86_64
qpid-cpp-debuginfo-0.14-14.el6_2.x86_64
qpid-cpp-server-0.14-14.el6_2.x86_64
qpid-cpp-server-cluster-0.14-14.el6_2.x86_64
qpid-cpp-server-devel-0.14-14.el6_2.x86_64

2. Create a custom repo which contain all pkgs for qpid-cpp-client-0.14-16 x86_64 and i686 except rh-qpid-cpp-tests-0.14-16.el6.x86_64.rpm
# ls -1
qpid-cpp-client-0.14-16.el6.i686.rpm
qpid-cpp-client-0.14-16.el6.x86_64.rpm
qpid-cpp-client-devel-0.14-16.el6.i686.rpm
qpid-cpp-client-devel-0.14-16.el6.x86_64.rpm
qpid-cpp-client-devel-docs-0.14-16.el6.noarch.rpm
qpid-cpp-client-rdma-0.14-16.el6.i686.rpm
qpid-cpp-client-rdma-0.14-16.el6.x86_64.rpm
qpid-cpp-client-ssl-0.14-16.el6.i686.rpm
qpid-cpp-client-ssl-0.14-16.el6.x86_64.rpm
qpid-cpp-debuginfo-0.14-16.el6.i686.rpm
qpid-cpp-debuginfo-0.14-16.el6.x86_64.rpm
qpid-cpp-server-0.14-16.el6.i686.rpm
qpid-cpp-server-0.14-16.el6.x86_64.rpm
qpid-cpp-server-cluster-0.14-16.el6.i686.rpm
qpid-cpp-server-cluster-0.14-16.el6.x86_64.rpm
qpid-cpp-server-devel-0.14-16.el6.i686.rpm
qpid-cpp-server-devel-0.14-16.el6.x86_64.rpm
qpid-cpp-server-rdma-0.14-16.el6.i686.rpm
qpid-cpp-server-rdma-0.14-16.el6.x86_64.rpm
qpid-cpp-server-ssl-0.14-16.el6.i686.rpm
qpid-cpp-server-ssl-0.14-16.el6.x86_64.rpm
qpid-cpp-server-store-0.14-16.el6.i686.rpm
qpid-cpp-server-store-0.14-16.el6.x86_64.rpm
qpid-cpp-server-xml-0.14-16.el6.i686.rpm
qpid-cpp-server-xml-0.14-16.el6.x86_64.rpm
repodata

3. Upgrade
# rpm -q yum
yum-3.2.29-30.el6.noarch
# yum upgrade
Loaded plugins: downloadonly, product-id, security, subscription-manager, tmprepo
Updating certificate-based repositories.
Unable to read consumer identity
beaker-client                                                                                    | 1.3 kB     00:00     
beaker-client/primary                                                                            | 4.3 kB     00:00     
beaker-client                                                                                                     14/14
qa-tools                                                                                         | 1.2 kB     00:00     
qa-tools/primary                                                                                 |  27 kB     00:00     
qa-tools                                                                                                        193/193
rhel6                                                                                            | 4.0 kB     00:00     
rhel6/primary_db                                                                                 | 3.1 MB     00:00     
rhel6-debug                                                                                      | 3.0 kB     00:00     
rhel6-debug/primary_db                                                                           | 512 kB     00:00     
rhel6-opt                                                                                        | 3.8 kB     00:00     
rhel6-opt/primary_db                                                                             | 1.3 MB     00:00     
rhel6-opt-debug                                                                                  | 3.0 kB     00:00     
rhel6-opt-debug/primary_db                                                                       | 370 kB     00:00     
rhel6-supp                                                                                       | 4.0 kB     00:00     
rhel6-supp/primary_db                                                                            |  51 kB     00:00     
tmp                                                                                              | 1.3 kB     00:00 ... 
tmp/primary                                                                                      | 6.0 kB     00:00 ... 
tmp                                                                                                               25/25
Setting up Upgrade Process
Resolving Dependencies
--> Running transaction check
---> Package qpid-cpp-client.x86_64 0:0.14-14.el6_2 will be updated
--> Processing Dependency: qpid-cpp-client = 0.14-14.el6_2 for package: rh-qpid-cpp-tests-0.14-14.el6_2.x86_64
---> Package qpid-cpp-client.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-client-devel.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-client-devel.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-client-devel-docs.noarch 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-client-devel-docs.noarch 0:0.14-16.el6 will be an update
---> Package qpid-cpp-client-rdma.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-client-rdma.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-client-ssl.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-client-ssl.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-debuginfo.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-debuginfo.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-server.x86_64 0:0.14-14.el6_2 will be updated
--> Processing Dependency: qpid-cpp-server = 0.14-14.el6_2 for package: rh-qpid-cpp-tests-0.14-14.el6_2.x86_64
---> Package qpid-cpp-server.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-server-cluster.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-server-cluster.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-server-devel.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-server-devel.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-server-rdma.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-server-rdma.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-server-ssl.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-server-ssl.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-server-store.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-server-store.x86_64 0:0.14-16.el6 will be an update
---> Package qpid-cpp-server-xml.x86_64 0:0.14-14.el6_2 will be updated
---> Package qpid-cpp-server-xml.x86_64 0:0.14-16.el6 will be an update
--> Finished Dependency Resolution
Error: Package: rh-qpid-cpp-tests-0.14-14.el6_2.x86_64 (@/rh-qpid-cpp-tests-0.14-14.el6_2.x86_64)
           Requires: qpid-cpp-client = 0.14-14.el6_2
           Removing: qpid-cpp-client-0.14-14.el6_2.x86_64 (installed)
               qpid-cpp-client = 0.14-14.el6_2
           Updated By: qpid-cpp-client-0.14-16.el6.x86_64 (rhel6)
               qpid-cpp-client = 0.14-16.el6
Error: Package: rh-qpid-cpp-tests-0.14-14.el6_2.x86_64 (@/rh-qpid-cpp-tests-0.14-14.el6_2.x86_64)
           Requires: qpid-cpp-server = 0.14-14.el6_2
           Removing: qpid-cpp-server-0.14-14.el6_2.x86_64 (@/qpid-cpp-server-0.14-14.el6_2.x86_64)
               qpid-cpp-server = 0.14-14.el6_2
           Updated By: qpid-cpp-server-0.14-16.el6.x86_64 (rhel6)
               qpid-cpp-server = 0.14-16.el6
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Comment 10 Patrik Kis 2012-10-12 14:53:48 UTC
(In reply to comment #6)
> http://yum.baseurl.org/gitweb?p=yum.git;a=commitdiff;
> h=dd59c6676575355dae4da8bd233f428aa582d0d0

I have successfully reproduced the issue with 2nd case from the description in above commit. Thus, clearing the needinfo.
Since all three cases point to only one change in yum code (and grepping over yum code showed that there is no other 'Protected multilib versions' message), there is no need to reproduce all of them.

Comment 14 errata-xmlrpc 2013-02-21 10:12:49 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, and where to find the updated
files, follow the link below.

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

http://rhn.redhat.com/errata/RHBA-2013-0406.html


Note You need to log in before you can comment on or make changes to this bug.