Bug 752475

Summary: ERROR with rpm_check_debug vs depsolve
Product: Red Hat Enterprise Linux 5 Reporter: mertensb
Component: yumAssignee: packaging-team-maint
Status: CLOSED WONTFIX QA Contact: BaseOS QE Security Team <qe-baseos-security>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 5.8CC: seth.alford, zpavlas
Target Milestone: rc   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-04-04 10:27:16 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Description mertensb 2011-11-09 11:07:08 EST
Description of problem:
ERROR with rpm_check_debug vs depsolve while running yum update

Version-Release number of selected component (if applicable):
[mertensb@Config58VM2 ~]$ sudo yum --version
  Installed: rpm- at 2011-11-09 16:01
  Built    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla> at 2011-09-30 09:43
  Committed: Panu Matilainen <pmatilai@redhat.com> at 2011-09-30 22:00

  Installed: rpm- at 2011-11-09 16:01
  Built    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla> at 2011-09-30 09:41
  Committed: Panu Matilainen <pmatilai@redhat.com> at 2011-09-30 22:00

  Installed: yum-3.2.22-37.el5.noarch at 2011-11-09 11:06
  Built    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla> at 2011-06-14 14:47
  Committed: James Antill <jantill@redhat.com> at 2011-06-14 22:00

  Installed: yum-metadata-parser-1.1.2-3.el5.x86_64 at 2011-11-09 11:06
  Built    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla> at 2009-04-06 14:15
  Committed: James Antill <james.antill@redhat.com> at 2009-04-06 22:00

  Installed: yum-rhn-plugin-0.5.4-22.el5_7.2.noarch at 2011-11-09 11:06
  Built    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla> at 2011-09-06 15:53
  Committed: Milan Zazrivec <mzazrivec@redhat.com> at 2011-09-06 22:00

How reproducible:
occurred only once, updates are installed.

Steps to Reproduce:
1. clone base channel
2. clone errata to this channel
3. sudo yum update
Actual results:
[mertensb@Config58VM2 ~]$ sudo yum update
Loaded plugins: rhnplugin
Setting up Update Process
Resolving Dependencies
--> Running transaction check
---> Package openssl.i686 0:0.9.8b-8.3.el5_0.2 set to be updated
---> Package openssl.x86_64 0:0.9.8b-8.3.el5_0.2 set to be updated
---> Package tar.x86_64 2:1.15.1-23.0.1.el5 set to be updated
---> Package vim-common.x86_64 2:7.0.109-7.el5 set to be updated
---> Package vim-enhanced.x86_64 2:7.0.109-7.el5 set to be updated
---> Package vim-minimal.x86_64 2:7.0.109-7.el5 set to be updated
---> Package vixie-cron.x86_64 4:4.1-70.el5 set to be updated
--> Finished Dependency Resolution

Dependencies Resolved

 Package                                Arch                             Version                                         Repository                                         Size
 openssl                                i686                             0.9.8b-8.3.el5_0.2                              qa-rhel-x86_64-server-5                           1.4 M
 openssl                                x86_64                           0.9.8b-8.3.el5_0.2                              qa-rhel-x86_64-server-5                           1.4 M
 tar                                    x86_64                           2:1.15.1-23.0.1.el5                             qa-rhel-x86_64-server-5                           749 k
 vim-common                             x86_64                           2:7.0.109-7.el5                                 qa-rhel-x86_64-server-5                           6.4 M
 vim-enhanced                           x86_64                           2:7.0.109-7.el5                                 qa-rhel-x86_64-server-5                           1.3 M
 vim-minimal                            x86_64                           2:7.0.109-7.el5                                 qa-rhel-x86_64-server-5                           333 k
 vixie-cron                             x86_64                           4:4.1-70.el5                                    qa-rhel-x86_64-server-5                            92 k

Transaction Summary
Install       0 Package(s)
Upgrade       7 Package(s)

Total download size: 12 M
Is this ok [y/N]: y
Downloading Packages:
(1/7): vixie-cron-4.1-70. 100% |=========================|  92 kB    00:00
(2/7): vim-minimal-7.0.10 100% |=========================| 333 kB    00:00
(3/7): tar-1.15.1-23.0.1. 100% |=========================| 749 kB    00:00
(4/7): vim-enhanced-7.0.1 100% |=========================| 1.3 MB    00:00
(5/7): openssl-0.9.8b-8.3 100% |=========================| 1.4 MB    00:00
(6/7): openssl-0.9.8b-8.3 100% |=========================| 1.4 MB    00:00
(7/7): vim-common-7.0.109 100% |=========================| 6.4 MB    00:00
Running rpm_check_debug
ERROR with rpm_check_debug vs depsolve:
libcrypto.so.6()(64bit) is needed by (installed) python-2.4.3-19.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) openldap-2.3.27-5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) net-snmp-libs-5.3.1-14.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) curl-7.15.5-2.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) gnupg-1.4.5-12.x86_64
libcrypto.so.6()(64bit) is needed by (installed) cyrus-sasl-2.1.22-4.x86_64
libcrypto.so.6()(64bit) is needed by (installed) postfix-2.3.3-2.x86_64
libcrypto.so.6()(64bit) is needed by (installed) OpenIPMI-libs-2.0.6-5.el5.3.x86_64
libcrypto.so.6()(64bit) is needed by (installed) bind-libs-9.3.3-7.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) wpa_supplicant-0.4.8-10.1.fc6.x86_64
libcrypto.so.6()(64bit) is needed by (installed) openssh-4.3p2-16.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) openssh-server-4.3p2-16.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) openssh-clients-4.3p2-16.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) bind-utils-9.3.3-7.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) OpenIPMI-2.0.6-5.el5.3.x86_64
libcrypto.so.6()(64bit) is needed by (installed) sendmail-8.13.8-2.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) dhcpv6_client-0.10-33.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) ipsec-tools-0.6.5-6.x86_64
libcrypto.so.6()(64bit) is needed by (installed) pam_ccreds-3-5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) net-snmp-5.3.1-14.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) w3m-0.5.1-15.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) lftp-3.5.1-2.fc6.x86_64
libcrypto.so.6()(64bit) is needed by (installed) wget-1.10.2-7.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) stunnel-4.15-2.x86_64
libcrypto.so.6()(64bit) is needed by (installed) pyOpenSSL-0.6-2.el5.x86_64
libcrypto.so.6()(64bit) is needed by (installed) m2crypto-0.16-8.el5.x86_64
libssl.so.6()(64bit) is needed by (installed) python-2.4.3-19.el5.x86_64
libssl.so.6()(64bit) is needed by (installed) openldap-2.3.27-5.x86_64
libssl.so.6()(64bit) is needed by (installed) curl-7.15.5-2.el5.x86_64
libssl.so.6()(64bit) is needed by (installed) gnupg-1.4.5-12.x86_64
libssl.so.6()(64bit) is needed by (installed) postfix-2.3.3-2.x86_64
libssl.so.6()(64bit) is needed by (installed) wpa_supplicant-0.4.8-10.1.fc6.x86_64
libssl.so.6()(64bit) is needed by (installed) sendmail-8.13.8-2.el5.x86_64
libssl.so.6()(64bit) is needed by (installed) w3m-0.5.1-15.el5.x86_64
libssl.so.6()(64bit) is needed by (installed) lftp-3.5.1-2.fc6.x86_64
libssl.so.6()(64bit) is needed by (installed) wget-1.10.2-7.el5.x86_64
libssl.so.6()(64bit) is needed by (installed) stunnel-4.15-2.x86_64
libssl.so.6()(64bit) is needed by (installed) pyOpenSSL-0.6-2.el5.x86_64
libssl.so.6()(64bit) is needed by (installed) m2crypto-0.16-8.el5.x86_64
(1, [u'Please report this error in https://bugzilla.redhat.com/enter_bug.cgi?product=Red%20Hat%20Enterprise%20Linux%205&component=yum'])

Expected results:
yum to handle dependencies without error

Additional info:
The RHEL5 64bit channel was cloned without errata and only the following errata have been cloned so far:
Security Advisory 	CLA-2007:0964 	Important: openssl security update 	2007-10-12
Security Advisory 	CLA-2007:0860 	Moderate: tar security update 	2007-08-23
Product Enhancement Advisory 	CLA-2007:0928 	tzdata enhancement update 	2007-10-04
Product Enhancement Advisory 	CLA-2009:0154 	prelink enhancement update 	2009-01-20
Bug Fix Advisory 	CLA-2007:0622 	prelink bug fix update 	2008-05-21
Security Advisory 	CLA-2011:1282 	Important: nss and nspr security update 	2011-09-12
Product Enhancement Advisory 	CLA-2007:0105 	tzdata enhancement update 	2007-03-14
Bug Fix Advisory 	CLA-2007:0352 	yum-rhn-plugin bug fix update 	2007-05-16
Security Advisory 	CLA-2007:0345 	Moderate: vixie-cron security update 	2007-05-17
Bug Fix Advisory 	CLA-2011:1198 	yum-rhn-plugin bug fix update 	2011-08-23
Bug Fix Advisory 	CLA-2011:1281 	yum-rhn-plugin bug fix update 	2011-09-12
Security Advisory 	CLA-2011:1349 	Important: rpm security update 	2011-10-03
Security Advisory 	CLA-2007:0346 	Moderate: vim security update 	2007-05-09
Bug Fix Advisory 	CLA-2010:0685 	vim bug fix update 	2011-01-13
Comment 1 Seth D. Alford 2012-05-31 18:16:04 EDT
I just saw depsolve versus rpm_check_debug issue with CentOS 5.5, when trying to install 32 and 64 bit ImageMagick rpms and its 32 and 64 bit dependent rpmss.  The rpm_check_debug vs depsolve failed, complaining about missing 64 bit packages.  The above bug looks somewhat similar to what I saw, so I thought I would post a comment.  Here's some of the complaints I saw:

Running rpm_check_debug
ERROR with rpm_check_debug vs depsolve:
libgnomevfs-2.so.0 is needed by libgsf-1.14.1-6.1.i386
libgdk-x11-2.0.so.0()(64bit) is needed by gnome-keyring-0.6.0-1.fc6.x86_64
libgdk_pixbuf-2.0.so.0()(64bit) is needed by gnome-keyring-0.6.0-1.fc6.x86_64
libgtk-x11-2.0.so.0()(64bit) is needed by gnome-keyring-0.6.0-1.fc6.x86_64
libgdk-x11-2.0.so.0()(64bit) is needed by libnotify-0.4.2-6.el5.x86_64
libgdk_pixbuf-2.0.so.0()(64bit) is needed by libnotify-0.4.2-6.el5.x86_64

My problem was intermittent. When I rebooted the system, the problem went away. However since I did not want to add yet another reboot to my upgrade process for the servers I work with, I spent some time looking at the problem, going through the yum libraries, and reading what I could of the Python code.

I discovered that my system had both 32 and 64 bit versions of rpm, rpm-libs, and rpm-build. Removing the 32 bit versions of these seems to have fixed my problem. What I think was happening is that yum thought it was installing both 32 and 64 bit versions of a set of packages. It told rpm to install them, through the rpm library interface. The 32 bit rpm library did not think it needed to install 64 bit rpms. So it skipped them. During the depsolve vs rpm_check_debug, the software discovered that the needed 64 bit rpms it wanted to install were not going to install. So the whole yum install failed.

Additionally, I saw a problem when I tried to install just one of the "leaf" dependents, libcroco, which did not have any additional dependents.  yum reported that it successfully installed 32 and 64 bit libcroco.  But, when I did

rpm -q --queryformat "%{NAME} %{ARCH}\n" libcroco

rpm only reported that the 32 bit (i386) package was installed.

To determine if both the 32 and 64 bit rpm, rpm-libs, and rpm-build packages are installed, I did:

rpm -q --queryformat "%{NAME} %{ARCH}\n" rpm rpm-libs rpm-build
Comment 2 Zdeněk Pavlas 2013-04-04 10:27:16 EDT
This is probably a bug in Yum depsolver, which does not handle upgrade of openssl.x86_64 properly.  Seems there was a soname bump, and Yum didn't recheck requires.

Please enable and refresh repository your python, openladp et al packages are comming from, as these must be upgraded in the same transaction as openssl.