Bug 1109594

Summary: ceph package is missing erasure code libraries
Product: [Fedora] Fedora Reporter: Erik Logtenberg <erik>
Component: cephAssignee: Boris Ranto <branto>
Status: CLOSED ERRATA QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 19CC: david, fedora, steve
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: ceph-0.80.5-11.fc19 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-11-12 02:41:20 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 Erik Logtenberg 2014-06-15 19:13:20 UTC
Description of problem:

The ceph package is missing some of the erasure code libraries. In the Fedora package, these files are included in the /usr/lib64/ceph/erasure-code directory:

libec_example.so -> libec_example.so.0.0.0
libec_example.so.0 -> libec_example.so.0.0.0
libec_example.so.0.0.0
libec_fail_to_initialize.so -> libec_fail_to_initialize.so.0.0.0
libec_fail_to_initialize.so.0 -> libec_fail_to_initialize.so.0.0.0
libec_fail_to_initialize.so.0.0.0
libec_fail_to_register.so -> libec_fail_to_register.so.0.0.0
libec_fail_to_register.so.0 -> libec_fail_to_register.so.0.0.0
libec_fail_to_register.so.0.0.0
libec_hangs.so -> libec_hangs.so.0.0.0
libec_hangs.so.0 -> libec_hangs.so.0.0.0
libec_hangs.so.0.0.0
libec_jerasure.so -> libec_jerasure.so.2.0.0
libec_jerasure.so.2 -> libec_jerasure.so.2.0.0
libec_jerasure.so.2.0.0
libec_missing_entry_point.so -> libec_missing_entry_point.so.0.0.0
libec_missing_entry_point.so.0 -> libec_missing_entry_point.so.0.0.0
libec_missing_entry_point.so.0.0.0

However these libraries (that are included in the official ceph package, located here: http://ceph.com/rpm/fc19), are missing:

libec_jerasure_generic.so -> libec_jerasure_generic.so.2.0.0
libec_jerasure_generic.so.2 -> libec_jerasure_generic.so.2.0.0
libec_jerasure_generic.so.2.0.0
libec_jerasure_sse3.so -> libec_jerasure_sse3.so.2.0.0
libec_jerasure_sse3.so.2 -> libec_jerasure_sse3.so.2.0.0
libec_jerasure_sse3.so.2.0.0
libec_jerasure_sse4.so -> libec_jerasure_sse4.so.2.0.0
libec_jerasure_sse4.so.2 -> libec_jerasure_sse4.so.2.0.0
libec_jerasure_sse4.so.2.0.0
libec_test_jerasure_generic.so -> libec_test_jerasure_generic.so.0.0.0
libec_test_jerasure_generic.so.0 -> libec_test_jerasure_generic.so.0.0.0
libec_test_jerasure_generic.so.0.0.0
libec_test_jerasure_sse3.so -> libec_test_jerasure_sse3.so.0.0.0
libec_test_jerasure_sse3.so.0 -> libec_test_jerasure_sse3.so.0.0.0
libec_test_jerasure_sse3.so.0.0.0
libec_test_jerasure_sse4.so -> libec_test_jerasure_sse4.so.0.0.0
libec_test_jerasure_sse4.so.0 -> libec_test_jerasure_sse4.so.0.0.0
libec_test_jerasure_sse4.so.0.0.0

Ceph uses libec_jerasure_sse3.so if you create an erasure coded pool on a machine that supports sse3, and if that library is missing, you cannot create or run such a pool at all.

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

ceph-0.80.1-2.fc19

How reproducible:

100%

Steps to Reproduce:
1. Install ceph packages
2. Observe missing libraries in /usr/lib64/ceph/erasure-code
3. Try to create erasure coded pool on SSE3-enabled machine

Actual results:

# ceph osd pool create test123 100 100 erasure default
Error EIO: failed to load plugin using profile default

Expected results:

# ceph osd pool create test123 100 100 erasure default
pool 'test123' created

Comment 1 Erik Logtenberg 2014-06-29 20:43:22 UTC
Need more info? Would it help if I submit a patch?

Comment 2 Dan Mick 2014-06-30 18:27:03 UTC
The Fedora spec file needs lots of love (needs to basically be refreshed, perhaps even sourced, perhaps with automated edits) from the spec file contained in the Ceph repo.  I am completely new to Fedora packaging and have been occupied with a release cycle; Kaleb shifted this bug to me in hopes that I'd have some time, which I haven't yet.

If you want to start by trying to use or slightly adapt the spec file contained in the Ceph sources, that would be a great help for the technical side of this, and then I can both review and focus on the process side.

Thanks for the offer.

Comment 3 Boris Ranto 2014-08-17 16:06:11 UTC
I've synced up the spec files and these files should no longer be missing in the latest build (I'll attempt to get the build to the updates-testing repo asap).

Comment 4 Fedora Update System 2014-08-17 16:11:23 UTC
ceph-0.80.5-6.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/ceph-0.80.5-6.fc19

Comment 5 Fedora Update System 2014-08-19 07:08:14 UTC
Package ceph-0.80.5-6.fc19:
* should fix your issue,
* was pushed to the Fedora 19 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing ceph-0.80.5-6.fc19'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2014-9571/ceph-0.80.5-6.fc19
then log in and leave karma (feedback).

Comment 6 Fedora Update System 2014-09-03 16:05:18 UTC
ceph-0.80.5-9.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/ceph-0.80.5-9.fc19

Comment 7 Fedora Update System 2014-10-31 03:56:09 UTC
ceph-0.80.5-11.fc19 has been submitted as an update for Fedora 19.
https://admin.fedoraproject.org/updates/ceph-0.80.5-11.fc19

Comment 8 Fedora Update System 2014-11-12 02:41:20 UTC
ceph-0.80.5-11.fc19 has been pushed to the Fedora 19 stable repository.  If problems still persist, please make note of it in this bug report.