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 1000337 - boost-devel updates not shipped on secondary arches
Summary: boost-devel updates not shipped on secondary arches
Keywords:
Status: CLOSED DUPLICATE of bug 1037680
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: releng
Version: 6.5
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: rc
: ---
Assignee: Lubos Kocman
QA Contact: Release Test Team
URL:
Whiteboard:
: 1005370 (view as bug list)
Depends On:
Blocks: 921792
TreeView+ depends on / blocked
 
Reported: 2013-08-23 08:51 UTC by Petr Machata
Modified: 2015-05-05 01:38 UTC (History)
10 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-01-20 14:39:46 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Petr Machata 2013-08-23 08:51:57 UTC
This is partial clone of 921792.  A discussion not directly related to the original bug has developed at that bugzilla, so I'm opening this to track it separately.

--- Additional comment from Scott Dial on 2013-08-19 20:56:52 CEST ---

I have a x86_64 install of EL6, and "yum install boost-devel.i686" fails due to a mismatch in the versions of boost. It seems like the 1.41.0-17.el6_4.i686 RPMs were not added to the x86_64 repositories correctly. Some are present, but not all. Am I missing something here?

--- Additional comment from Petr Machata on 2013-08-19 21:27:25 CEST ---

Do you have an i686 static library installed?  I wouldn't be entirely surprised if that was the cause.  In any case, can you post the conflict message that you are getting?

--- Additional comment from Scott Dial on 2013-08-20 01:33:15 CEST ---

# rpm -qa | grep boost
boost-system-1.41.0-17.el6_4.x86_64
boost-wave-1.41.0-17.el6_4.x86_64
boost-iostreams-1.41.0-17.el6_4.x86_64
boost-filesystem-1.41.0-17.el6_4.x86_64
boost-date-time-1.41.0-17.el6_4.x86_64
boost-serialization-1.41.0-17.el6_4.x86_64
boost-python-1.41.0-17.el6_4.x86_64
boost-regex-1.41.0-17.el6_4.x86_64
boost-signals-1.41.0-17.el6_4.x86_64
boost-test-1.41.0-17.el6_4.x86_64
boost-devel-1.41.0-17.el6_4.x86_64
boost-thread-1.41.0-17.el6_4.x86_64
boost-program-options-1.41.0-17.el6_4.x86_64
boost-graph-1.41.0-17.el6_4.x86_64
boost-1.41.0-17.el6_4.x86_64
# yum install boost-devel.i686
...
Error: Package: boost-devel-1.41.0-11.el6.i686 (rhel-x86_64-workstation-6)
           Requires: boost = 1.41.0-11.el6
           Installed: boost-1.41.0-17.el6_4.x86_64 (@rhel-x86_64-workstation-6)
               boost = 1.41.0-17.el6_4
           Available: boost-1.41.0-11.el6.x86_64 (rhel-x86_64-workstation-6)
               boost = 1.41.0-11.el6
           Available: boost-1.41.0-11.el6_1.2.x86_64 (rhel-x86_64-workstation-6)
               boost = 1.41.0-11.el6_1.2
           Available: boost-1.41.0-15.el6_4.x86_64 (rhel-x86_64-workstation-6)
               boost = 1.41.0-15.el6_4
# yum shell
> remove boost*
> install boost-devel.i686
> run
...
Error: Package: boost-devel-1.41.0-11.el6.i686 (rhel-x86_64-workstation-6)
    Requires: boost = 1.41.0-11.el6
    Removing: boost-1.41.0-17.el6_4.x86_64 (@rhel-x86_64-workstation-6)
        boost = 1.41.0-17.el6_4
    Available: boost-1.41.0-11.el6.x86_64 (rhel-x86_64-workstation-6)
        boost = 1.41.0-11.el6
    Available: boost-1.41.0-11.el6_1.2.x86_64 (rhel-x86_64-workstation-6)
        boost = 1.41.0-11.el6_1.2
    Available: boost-1.41.0-15.el6_4.x86_64 (rhel-x86_64-workstation-6)
        boost = 1.41.0-15.el6_4

# yum list --showduplicates boost-devel.i686
Available Packages
boost-devel.i686             1.41.0-11.el6             rhel-x86_64-workstation-6

If I walk over to a RHEL 6 i686 install, and do the same search:

# yum list --showduplicates boost-devel.i686
Installed Packages
boost-devel.i686           1.41.0-17.el6_4              @rhel-i386-workstation-6
Available Packages
boost-devel.i686           1.41.0-11.el6                rhel-i386-workstation-6
boost-devel.i686           1.41.0-11.el6_1.2            rhel-i386-workstation-6
boost-devel.i686           1.41.0-15.el6_4              rhel-i386-workstation-6
boost-devel.i686           1.41.0-17.el6_4              rhel-i386-workstation-6

It would seem that these RPMs should be in the x86_64 repo. My company reposync's the RHEL repos for local mirrors and I can verify that there is not nor has there ever been (we never delete RPMs so that we have backups for everything):

# ls boost-devel*.i686.rpm
boost-devel-1.41.0-11.el6.i686.rpm

Strange, yes?

--- Additional comment from Petr Machata on 2013-08-20 12:11:59 CEST ---

This looks like a release engineering issue.  It is possible that we don't provide secondary-arch devel packages (they would still be in the base collection, if the decision to drop the support was made later).  I'm moving this problem to RCM in hope they can shed some light on this.

--- Additional comment from Scott Dial on 2013-08-23 01:52:36 CEST ---

Except that you are providing an old secondary-arch devel package for boost-devel. You can see above that the confusing conflicts are the result of the only boost-devel.i686 package available being boost-devel-1.41.0-11.el6.i686, which has a hard dependency on boost = 1.41.0-11.el6. So, the upgrade path was broken, which is why I came here confused, because I knew 1.41.0-17.el6_4 was supposed to solve my problem.

I am confused why the i386 isn't strictly a subset of the x86_64 repo. I find that confusing and startling that it's possible for it to not be. In particular, because I don't see how I can subscribe a RHEL 6 development machine to the i386 channels to fill in the gaps that are missing, in order to cross-compile.

--- Additional comment from Scott Dial on 2013-08-23 02:56:36 CEST ---

To add more info here: even if boost-devel.i686 was available, it requires boost-python.i686. boost-python.i686 will drag in python-libs.i686, which is an old version too:

# yum list --showduplicates python-libs.i686
Available Packages
python-libs.i686            2.6.5-3.el6                rhel-x86_64-workstation-6
python-libs.i686            2.6.5-3.el6_0.2            rhel-x86_64-workstation-6

Trying to install python-libs-2.6.5-3.el6 causes a version conflict for Python.

I double-checked this stuff on Sceintific Linux 6, and this all just works there (although they are some versions behind). I don't understand this.

I'm working around this at my company by putting these i386 packages into our Yum repo for x86_64, but that's ugly and it makes me unhappy.

----------------------------------------------------------------------
Additional info:
In the erratum that this is relating to:
http://rhn.redhat.com/errata/RHBA-2013-0692.html
... i686 -devel is indeed not included in x86_64 fileset.  Other sub-packages are included in their i686 variant even in the x86_64 fileset.

I think we had this in the past already.  Chances are the problem is we don't ship one of the deps in i686, which prevents boost-devel to be shipped as well.  (But then why is the base version available?)  But I can't find where this was discussed.

Comment 2 Lubos Kocman 2013-08-23 10:43:11 UTC
boost-devel was filtered on purpose in Bug 675101. It was related to python one of them is python-boost. I'm not sure why boost-devel was filtered out as well.

I just modified distill configuration. Change should be visible in tomorrow's nightly

Lubos

Comment 3 Petr Machata 2013-08-23 11:09:46 UTC
Boost-devel brings in boost, which brings in boost-python, which brings in python-libs.  That's why, ultimately, we had to drop boost-devel if we don't ship python-libs.  _Some_ python-libs is available though, as can be seen above, albeit not the most recent one, which should be enough to satisfy the deps.

Luckily, boost-devel doesn't explicitly depend on boost-python (even though it probably should), so even if the customer won't be able to develop i386 Boost.Python apps on x86_64, the rest should work fine.

Comment 4 Scott Dial 2013-08-23 12:00:22 UTC
(In reply to Lubos Kocman from comment #2)
> boost-devel was filtered on purpose in Bug 675101. It was related to python
> one of them is python-boost. I'm not sure why boost-devel was filtered out
> as well.

I can't see Bug 675101, so I can't comment on the rationale for the exclusion. However, boost-devel requires libboost_python.so.5 and libboost_python-mt.so.5, so it drags in boost-python.

(In reply to Petr Machata from comment #3)
> Boost-devel brings in boost, which brings in boost-python, which brings in
> python-libs.  That's why, ultimately, we had to drop boost-devel if we don't
> ship python-libs.  _Some_ python-libs is available though, as can be seen
> above, albeit not the most recent one, which should be enough to satisfy the
> deps.

You can't mix python-libs versions, so unless you ship a match python-libs.i686 to the latest python-libs.x86_64, it will still be broken. python-libs, like most (all?) *-libs packages, has a hard-requirement for the base package of the same version. Again, I don't fully grok why you'd stop updating python-libs.i686.

Comment 5 Petr Machata 2013-08-23 15:43:58 UTC
The argument in bug 675101 is that it's not desirable to have 32-bit python on x86_64, because RPM wouldn't install two interpreters side by side anyway.  python-libs was somehow caught in this as well.  I'm not sure--is python-libs of any use without the interpreter, can scripts be invoked purely via python-libs?  It's unfortunate that removal of python-libs also means removal of almost 100 libraries shipped by boost-devel.

I'm adding Petr Šplíchal to CC, as he was one of the drivers of this change.  I hope he'll add a more qualified point of view as to what harm python-libs.i386 does.

Comment 6 Scott Dial 2013-08-23 18:27:14 UTC
I can understand not wanting python.i686 installed on an x86_64 system, since Python is a core dependency (e.g., Yum depends on it) and you want /usr/bin/python to be *right* python. However, python-libs is something totally different, as there are several projects that use libpython2.6.so to embed a Python interpreter, which is exactly what boost-python allows[1]. Currently, all of those packages are uninstallable due python-libs.i686 mismatching versions with the base python RPM.

# repoquery --whatrequires libpython2.6.so.1.0
PyKDE4-akonadi-0:4.3.4-5.el6.i686
PyQt4-0:4.6.2-8.el6.i686
boost-mpich2-python-0:1.41.0-11.el6.i686
boost-python-0:1.41.0-11.el6.i686
fontforge-0:20090622-2.1.el6.i686
glade3-libgladeui-0:3.6.7-2.1.el6.i686
gstreamer-python-0:0.10.16-1.1.el6.i686
iscsi-initiator-utils-0:6.2.0.872-10.el6.i686
kdeutils-libs-6:4.3.4-6.el6.i686
python-0:2.6.5-3.el6.i686
python-0:2.6.5-3.el6_0.2.i686
python-devel-0:2.6.5-3.el6.i686
python-devel-0:2.6.5-3.el6_0.2.i686
rhythmbox-0:0.12.8-1.el6.i686

If you include the greater community (EPEL), then the list of broken packages is larger:

# repoquery --repoid=epel --whatrequires libpython2.6.so.1.0
OpenColorIO-0:1.0.7-4.el6.i686
OpenImageIO-0:1.0.4-1.el6.i686
airinv-0:1.00.0-2.el6.i686
airrac-0:1.00.0-2.el6.i686
airsched-0:1.00.0-2.el6.i686
collectd-0:4.10.9-1.el6.i686
gnumeric-1:1.10.10-2.el6.1.i686
kvirc-0:4.2.0-3.el6.i686
plplot-tk-0:5.9.7-3.el6.1.i686
python-pyside-0:0.4.1-3.el6.i686
rekall-python-0:2.4.6-13.el6.i686
rmol-0:1.00.0-2.el6.i686
sevmgr-0:1.00.0-3.el6.i686
shiboken-libs-0:0.5.0-2.el6.i686
simcrs-0:1.00.0-2.el6.i686
simfqt-0:1.00.0-2.el6.i686
stdair-0:1.00.1-3.el6.i686
tomoe-0:0.6.0-19.el6.i686
trademgen-0:1.00.0-2.el6.i686
travelccm-0:1.00.1-2.el6.i686
unbound-libs-0:1.4.19-1.el6.i686
vtk-python-0:5.8.0-6.el6.1.i686

However, beyond all of that, I don't understand bug 675101 because the only way python.i686 causes a problem is if python.x86_64 is not installed. In which, if you install python.i686, it will end up being /usr/bin/python and cause havoc. However, to achieve that is a multi-step process that nobody should do. Let's not kill the patient to cure a cold. In fact, on downstream distros, they still deliver the i686 package, which makes sense to me, and I don't see lots of complaints about that.

[2] http://www.boost.org/doc/libs/1_41_0/libs/python/doc/tutorial/doc/html/python/embedding.html

Comment 7 Scott Dial 2013-08-23 18:28:14 UTC
Oh, it occurs to me that you need python.i686 to get the Python standard library, so that is probably the reason all of the python*.i686 packages were blocked.

Comment 8 Lubos Kocman 2013-08-26 09:36:15 UTC
Reverting the change and setting devel nack


[2013-08-26 01:56:16] ERROR: 47535683131712 task_resolve_deps.py:174 (s390x.Server) Unresolvable dependency libboost_python.so.5 in boost-devel.s390
[2013-08-26 01:56:16] ERROR: 47535683131712 task_resolve_deps.py:174 (s390x.Server) Unresolvable dependency libboost_python-mt.so.5 in boost-devel.s390
[2013-08-26 01:56:16] ERROR: 47535683131712 task_resolve_deps.py:174 (s390x.Server) Unresolvable dependency libboost_python.so.5 in boost-devel.s390
[2013-08-26 01:56:16] ERROR: 47535683131712 task_resolve_deps.py:174 (s390x.Server) Unresolvable dependency libboost_python-mt.so.5 in boost-devel.s390

Lubos

Comment 9 RHEL Program Management 2013-08-26 10:05:56 UTC
Development Management has reviewed and declined this request.
You may appeal this decision by reopening this request.

Comment 10 Scott Dial 2013-08-26 12:36:32 UTC
You didn't even reply to my comments, wherein I tried to argue against a ticket I can't even read. How can I address concerns from a ticket that is closed to the public? Also, you realize that you have broken the upgrade path for anyone who has already installed boost-devel.i686? (That's how I originally discovered the issue.) Beyond that, your product is inconsistent; there are 14 RPMs in *your* repository that currently are uninstallable due to not including python-libs.i686. I have another development box that is Scientific Linux 6, and this works perfectly fine, so I don't get it.

I don't have permissions on this tracker to re-open tickets, so that's a cute way to tell me to go away. Thanks.

Comment 11 Lubos Kocman 2013-08-26 13:59:19 UTC
Hello,

let me recheck the issue with other guys.

Lubos

Comment 12 Scott Dial 2013-08-27 03:00:28 UTC
Lubos,

Thanks for giving me a look at the other bug. So, I guess this ticket is mislabeled, because boost-devel was just collateral damage, and the real underlying issue is removing the i686 Python from x86_64.I think the solution discussed about pushing the Python stdlib into the python-libs subpackage made a lot of sense, and I wonder why that wasn't pursued instead of yanking out packages?

Thanks,
-Scott

Comment 13 Petr Machata 2013-09-09 10:40:47 UTC
*** Bug 1005370 has been marked as a duplicate of this bug. ***

Comment 15 Petr Machata 2014-01-20 14:39:46 UTC

*** This bug has been marked as a duplicate of bug 1037680 ***


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