Bug 1193182 - ceph has unversioned obsoletes
Summary: ceph has unversioned obsoletes
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora EPEL
Classification: Fedora
Component: ceph
Version: epel7
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Boris Ranto
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2015-02-16 19:22 UTC by Ken Dreyer
Modified: 2015-10-26 18:55 UTC (History)
2 users (show)

Fixed In Version: ceph-0.87.1-3.fc23 ceph-0.80.7-0.5.el7 ceph-0.80.7-0.6.el7
Clone Of:
Environment:
Last Closed: 2015-10-26 18:55:41 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
patch against epel7 which adds Obsoletes version numbers (754 bytes, patch)
2015-02-16 19:25 UTC, Ken Dreyer
no flags Details | Diff
patch against epel7 which adds Obsoletes version numbers (2.98 KB, patch)
2015-02-16 19:27 UTC, Ken Dreyer
branto: review+
Details | Diff
patch against master which adds Obsoletes version numbers (3.02 KB, patch)
2015-02-16 20:14 UTC, Ken Dreyer
branto: review+
Details | Diff

Description Ken Dreyer 2015-02-16 19:22:20 UTC
Description of problem:
The ceph-devel and python-ceph packages were split out, but there were no version numbers added to the Obsoletes at the time of the split.
    
This means that EPEL obsoletes packages that are far newer than ours. This impacts packages coming from upstream's "gitbuilder" system (for example), as well as any other upstream RPMs until this package split is done upstream.
    
Version-Release number of selected component (if applicable):
ceph-0.80.7-0.4.el7


Steps to Reproduce:
1. Enable the EPEL repository along with one of Ceph's upstream repositories, (for example, a gitbuilder repository) that contains a version of Ceph newer than 0.80.7.
2. "yum install ceph"

Actual results:
yum fails to install ceph, quitting with dependency issues.

Expected results:
The newer package should win, and ceph should not fail to install.

Additional info:
This is reported downstream at http://tracker.ceph.com/issues/10893

Comment 1 Ken Dreyer 2015-02-16 19:25:33 UTC
Created attachment 992352 [details]
patch against epel7 which adds Obsoletes version numbers

I'm attaching a patch against the epel7 dist-git branch which adds version numbers to the Obsoletes. I've chosen to use a version+release number that's lower than what we currently ship in EPEL (0.80.7-0.4), but newer than what we shipped in the last EPEL update (0.80.5).

Comment 2 Ken Dreyer 2015-02-16 19:27:19 UTC
Created attachment 992354 [details]
patch against epel7 which adds Obsoletes version numbers

Oops; I attached the wrong patch file. Here is the correct one, against ceph's epel7 branch.

Comment 3 Ken Dreyer 2015-02-16 20:14:43 UTC
Created attachment 992367 [details]
patch against master which adds Obsoletes version numbers

Here is a similar patch against dist-git's master (Rawhide).

Comment 4 Boris Ranto 2015-02-18 14:51:57 UTC
This does not really help. A lot of upstream packages are still epoch 0 and making the Obsoletes versioned does not help there. Take 0.80.8 for example which afaik is still of epoch 0.

Not to mention that ceph-deploy can be used to install older versions of ceph (i.e. pre-firefly) and it would not help there either.

The proper way to fix this is once again to let ceph-deploy make yum-plugin-priorities handle Obsoletes properly, i.e.

echo "check_obsoletes=1" >> /etc/yum/pluginconf.d/priorities.conf

Nothing else will really help here.

Comment 5 Ken Dreyer 2015-02-18 15:26:26 UTC
My concern is that there are many users who deploy ceph without configuring yum's plugin to check obsoletes, or use older versions of ceph-deploy.

What are the downsides to taking these patches in Fedora and EPEL? Aren't most Obsoletes supposed to have version numbers?

Comment 6 Boris Ranto 2015-02-18 15:57:03 UTC
Well, downsides? Probably none. The thing is that it does not really help most of the time. AFAICR, I had some troubles with that approach even with versioned Obsoletes. Maybe, it was just that Hammer was still of Epoch 0 or something similar, maybe it was the fact that ceph-devel-compat provides ceph-devel. Anyway, it should get tested to see if it actually helps in any meaningful scenario (I'm not even sure if yum does not ignore the version in Obsoletes altogether).

Comment 7 Boris Ranto 2015-03-09 11:44:39 UTC
Comment on attachment 992354 [details]
patch against epel7 which adds Obsoletes version numbers

btw: The patch looks sane and it certainly should not break anything so feel free to push the changes to the dist-git repo and they will get merged once the packages get updated. It is just that I do not want to go through the bodhi process just for this.

Comment 9 Fedora Update System 2015-04-03 17:15:51 UTC
ceph-0.80.7-0.5.el7 has been submitted as an update for Fedora EPEL 7.
https://admin.fedoraproject.org/updates/ceph-0.80.7-0.5.el7

Comment 10 Fedora Update System 2015-04-06 03:11:55 UTC
Package ceph-0.80.7-0.5.el7:
* should fix your issue,
* was pushed to the Fedora EPEL 7 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing ceph-0.80.7-0.5.el7'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2015-1607/ceph-0.80.7-0.5.el7
then log in and leave karma (feedback).

Comment 11 Fedora Update System 2015-10-07 09:55:39 UTC
ceph-0.80.7-0.6.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2015-40bf39f476

Comment 12 Fedora Update System 2015-10-07 19:19:43 UTC
ceph-0.80.7-0.6.el7 has been pushed to the Fedora EPEL 7 testing repository. If problems still persist, please make note of it in this bug report.
If you want to test the update, you can install it with
$ su -c 'yum --enablerepo=epel-testing update ceph'
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2015-40bf39f476

Comment 13 Fedora Update System 2015-10-08 08:59:12 UTC
ceph-0.80.7-0.6.el7 has been submitted as an update to Fedora EPEL 7. https://bodhi.fedoraproject.org/updates/FEDORA-EPEL-2015-40bf39f476

Comment 14 Fedora Update System 2015-10-26 18:55:36 UTC
ceph-0.80.7-0.6.el7 has been pushed to the Fedora EPEL 7 stable repository. If problems still persist, please make note of it in this bug report.


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