Bug 1099105

Summary: libguestfs Requires: /lib64/libldif-2.4.so.2 missing from openldap-2.4.39-6.el6.x86_64
Product: Red Hat Enterprise Linux 6 Reporter: Richard W.M. Jones <rjones>
Component: libguestfsAssignee: Pino Toscano <ptoscano>
Status: CLOSED ERRATA QA Contact: Virtualization Bugs <virt-bugs>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 6.6CC: bsarathy, eblake, lbezdick, leiwang, mbooth, mzatko, ptoscano, reda.benabed, snagar
Target Milestone: rcKeywords: Regression
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: libguestfs-1.20.11-6.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-10-14 06:35:26 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 Richard W.M. Jones 2014-05-19 13:42:44 UTC
Description of problem:

openldap no longer provides libldif (see also bug 1077569, bug 923680).

Therefore libguestfs will need a rebuild in order to (automatically)
drop this dependency.

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

1:libguestfs-1.20.11-3.el6.x86_64
openldap-2.4.39-6.el6.x86_64

How reproducible:

100%

Steps to Reproduce:
1. Install latest libguestfs & openldap from brew

Actual results:

# yum --enablerepo=brewroot install openldap
Loaded plugins: product-id, refresh-packagekit, subscription-manager
This system is receiving updates from Red Hat Subscription Management.
rhel-6-server-cf-tools-1-rpms                            | 2.8 kB     00:00     
rhel-6-server-rhev-agent-rpms                            | 3.1 kB     00:00     
rhel-ha-for-rhel-6-server-rpms                           | 3.7 kB     00:00     
rhel-lb-for-rhel-6-server-rpms                           | 3.7 kB     00:00     
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package openldap.x86_64 0:2.4.23-32.el6_4.1 will be updated
--> Processing Dependency: libldif-2.4.so.2()(64bit) for package: openldap-devel-2.4.23-32.el6_4.1.x86_64
--> Processing Dependency: openldap = 2.4.23-32.el6_4.1 for package: openldap-devel-2.4.23-32.el6_4.1.x86_64
---> Package openldap.x86_64 0:2.4.39-6.el6 will be an update
--> Running transaction check
---> Package openldap-devel.x86_64 0:2.4.23-32.el6_4.1 will be updated
---> Package openldap-devel.x86_64 0:2.4.39-6.el6 will be an update
--> Processing Dependency: /lib64/libldif-2.4.so.2 for package: 1:libguestfs-1.20.11-3.el6.x86_64
--> Finished Dependency Resolution
Error: Package: 1:libguestfs-1.20.11-3.el6.x86_64 (@brewroot)
           Requires: /lib64/libldif-2.4.so.2
           Removing: openldap-2.4.23-32.el6_4.1.x86_64 (@rhel-6.5-nightly)
               Not found
           Updated By: openldap-2.4.39-6.el6.x86_64 (brewroot)
               Not found
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Comment 2 Eric Blake 2014-06-03 16:45:38 UTC
The latest rebuild still failed to break the dependency:

---> Package libguestfs.x86_64 1:1.20.11-4.el6 will be an update
--> Processing Dependency: /lib64/libldif-2.4.so.2 for package: 1:libguestfs-1.20.11-4.el6.x86_64

Comment 3 Richard W.M. Jones 2014-06-18 17:49:17 UTC
What's happening is that when we rebuild libguestfs, it is built
against the old version of openldap from RHEL 6.5, not the new version.

To see this, take a look at the root.log file from the libguestfs build:
http://download.devel.redhat.com/brewroot/packages/libguestfs/1.20.11/4.el6/data/logs/x86_64/root.log
and notice the version of openldap (2.4.23-34.el6_5.1) which is not
the updated version (2.4.39).

To fix this someone has to add a build override.  I think in RHEL
you actually have to ask rel-eng to do this (by emailing
release-engineering).  It cannot be done using
Bodhi build-overrides as in Fedora.

(Roll on RHEL 7.1 / supermin 5, which fixes all this nonsense ...)

Comment 4 Richard W.M. Jones 2014-06-18 17:54:26 UTC
Scratch that bit about release-engineering.  We can do it ourselves
by running the following commands:

pkg=openldap-2.4.39-8.el6

brew tag-pkg RHEL-6.6-temp-override $pkg
brew wait-repo RHEL-6.6-build --build=$pkg

I have done this and will kick off a rebuild later this evening.

Comment 5 Richard W.M. Jones 2014-06-18 17:55:14 UTC
Note that the temp-override repo gets deleted frequently
(every evening IIRC), so basically you have to do this before
every libguestfs rebuild in RHEL 6.

Comment 6 Richard W.M. Jones 2014-06-18 19:17:13 UTC
This bug needs PM and QA acks in order to perform the rebuild.

Comment 7 Richard W.M. Jones 2014-06-18 20:39:14 UTC
There's a build going here:
https://brewweb.devel.redhat.com/taskinfo?taskID=7595225

Comment 8 Richard W.M. Jones 2014-06-19 07:42:51 UTC
Pino, I have added the build above to the erratum and checked
rpmdiffs.

I am not able to add this BZ# to the erratum because it
needs PM-ack (see: https://errata.devel.redhat.com/bugs/troubleshoot?bug_id=1099105)

Comment 10 bfan 2014-07-02 08:36:51 UTC
Hi, I still meet the problem with the latest libguestfs package,

# yum install openldap-2.4.39-6.el6.x86_64.rpm
Loaded plugins: product-id, security, subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
Setting up Install Process
Examining openldap-2.4.39-6.el6.x86_64.rpm: openldap-2.4.39-6.el6.x86_64
Marking openldap-2.4.39-6.el6.x86_64.rpm as an update to openldap-2.4.23-32.el6_4.1.x86_64
Resolving Dependencies
--> Running transaction check
---> Package openldap.x86_64 0:2.4.23-32.el6_4.1 will be updated
---> Package openldap.x86_64 0:2.4.39-6.el6 will be an update
--> Processing Dependency: /lib64/libldif-2.4.so.2 for package: 1:libguestfs-1.20.11-8.el6.x86_64
--> Finished Dependency Resolution
Error: Package: 1:libguestfs-1.20.11-8.el6.x86_64 (@/libguestfs-1.20.11-8.el6.x86_64)
           Requires: /lib64/libldif-2.4.so.2
           Removing: openldap-2.4.23-32.el6_4.1.x86_64 (@anaconda-RedHatEnterpriseLinux-201311111358.x86_64/6.5)
               Not found
           Updated By: openldap-2.4.39-6.el6.x86_64 (/openldap-2.4.39-6.el6.x86_64)
               Not found
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest

Comment 11 Richard W.M. Jones 2014-07-02 09:24:00 UTC
(In reply to bfan from comment #10)
> Hi, I still meet the problem with the latest libguestfs package,
> 
> # yum install openldap-2.4.39-6.el6.x86_64.rpm
> Loaded plugins: product-id, security, subscription-manager
> This system is not registered to Red Hat Subscription Management. You can
> use subscription-manager to register.
> Setting up Install Process
> Examining openldap-2.4.39-6.el6.x86_64.rpm: openldap-2.4.39-6.el6.x86_64
> Marking openldap-2.4.39-6.el6.x86_64.rpm as an update to
> openldap-2.4.23-32.el6_4.1.x86_64
> Resolving Dependencies
> --> Running transaction check
> ---> Package openldap.x86_64 0:2.4.23-32.el6_4.1 will be updated
> ---> Package openldap.x86_64 0:2.4.39-6.el6 will be an update
> --> Processing Dependency: /lib64/libldif-2.4.so.2 for package:
> 1:libguestfs-1.20.11-8.el6.x86_64
> --> Finished Dependency Resolution
> Error: Package: 1:libguestfs-1.20.11-8.el6.x86_64
> (@/libguestfs-1.20.11-8.el6.x86_64)
>            Requires: /lib64/libldif-2.4.so.2
>            Removing: openldap-2.4.23-32.el6_4.1.x86_64
> (@anaconda-RedHatEnterpriseLinux-201311111358.x86_64/6.5)
>                Not found
>            Updated By: openldap-2.4.39-6.el6.x86_64
> (/openldap-2.4.39-6.el6.x86_64)
>                Not found
>  You could try using --skip-broken to work around the problem
>  You could try running: rpm -Va --nofiles --nodigest

You're using the wrong version of openldap.  This package will
now only work with the latest version of openldap (2.4.39-8):

https://brewweb.devel.redhat.com/buildinfo?buildID=363428

It's not possible to build a package that works with both versions,
at least, until we upgrade to supermin >= 5 (RHEL 7.1).

Comment 12 bfan 2014-07-03 02:36:26 UTC
Verified with libguestfs-1.20.11-8.el6.x86_64, openldap-2.4.39-8.el6.x86_64

Install and update succeed.

Comment 13 reda 2014-08-22 19:23:31 UTC
Hello,

I want to install the same package (openldap-2.4.39-8.el6.x86_64.rpm) , but i want to know if it's possible to rollback with (yum history undo xx )

My seconde question is : where can i download this package ? From RHN i have just (openldap-servers-2.4.39-8.el6.i686.rpm ) for 32-bit arch i686  !

Thank you for all

Comment 14 errata-xmlrpc 2014-10-14 06:35:26 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-2014-1458.html