Bug 598639 - yum (via. mock) not installing all build dependencies (rpm bindings change)
Summary: yum (via. mock) not installing all build dependencies (rpm bindings change)
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: yum   
(Show other bugs)
Version: 6.0
Hardware: All
OS: Linux
low
medium
Target Milestone: rc
: ---
Assignee: James Antill
QA Contact: Karel Srot
URL:
Whiteboard:
Keywords:
Depends On: 598221
Blocks:
TreeView+ depends on / blocked
 
Reported: 2010-06-01 18:44 UTC by James Antill
Modified: 2014-01-21 23:15 UTC (History)
9 users (show)

Fixed In Version: yum-3.2.27-10.el6
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: 598221
Environment:
Last Closed: 2010-11-10 22:00:45 UTC
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

Description James Antill 2010-06-01 18:44:21 UTC
+++ This bug was initially created as a clone of Bug #598221 +++

http://linux.dell.com/files/fedora/FixBuildRequires/mock-results/i386/javasqlite-20100131-1.fc13.src.rpm/result/root.log

On a quick look, this looks like a yum (or mock?) bug to me.

javasqlite specifically wants both 1.5 and 1.6 java-devel packages installed at build time, and has:

BuildRequires:  java-devel = 1:1.6.0
BuildRequires:  java-devel = 1.5.0

java-1.6.0-openjdk-devel satisfies the first but not the second, and does not obsolete the package providing the second (java-1.5.0-gcj-devel).  However, only java-1.6.0-openjdk-devel got installed according to the root log so failure is expected as build requirements are not met.

Curiously, I cannot reproduce on a F-13 x86_64 host, it builds fine in mock here; both java-1.6.0-openjdk-devel and java-1.5.0-gcj-devel get installed as intended.


[...]

--- Additional comment from svidal@redhat.com on 2010-06-01 13:15:25 EDT ---

http://fpaste.org/Xpbx/

so here's the backstory:

mock gets the requires from the srpm
it calls rpmUtils.miscutils.formatRequire() to return them

rpm-python changed so it is now offering Longs instead of ints as the requiresflags.

this meant that formatRequire breaks and doesn't return the requires versions at all - just the requiresnames. :(

the patch at the top of this comment fixes it and makes all of this work.

Comment 1 James Antill 2010-06-01 18:45:14 UTC
Pretty sure this applies to rpm-python 4.8.0 in RHEL-6.

Patch is trivial and harmless anyway.

Comment 2 RHEL Product and Program Management 2010-06-01 18:56:39 UTC
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux major release.  Product Management has requested further
review of this request by Red Hat Engineering, for potential inclusion in a Red
Hat Enterprise Linux Major release.  This request is not yet committed for
inclusion.

Comment 6 releng-rhel@redhat.com 2010-11-10 22:00:45 UTC
Red Hat Enterprise Linux 6.0 is now available and should resolve
the problem described in this bug report. This report is therefore being closed
with a resolution of CURRENTRELEASE. You may reopen this bug report if the
solution does not work for you.


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