Bug 812975 - libcephfs is useless
libcephfs is useless
Product: Fedora
Classification: Fedora
Component: ceph (Show other bugs)
Unspecified Unspecified
unspecified Severity unspecified
: ---
: ---
Assigned To: Josef Bacik
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2012-04-16 13:20 EDT by Adam Jackson
Modified: 2012-06-07 13:29 EDT (History)
7 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2012-06-07 13:29:33 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
ceph-subpackage.patch (2.34 KB, patch)
2012-04-17 10:08 EDT, Adam Jackson
no flags Details | Diff

  None (edit)
Description Adam Jackson 2012-04-16 13:20:46 EDT
Description of problem:

A 4.5M shared library used by literally nothing else in the distro.  Which afaict gets installed by default even on the live image since qemu requires it.

As a more general thing I'd like to see the binaries and libraries split apart if things will work when split that way, but libcephfs should definitely either be subpackaged or just deleted.
Comment 1 Josef Bacik 2012-04-16 13:37:26 EDT
Even better is for qemu not to require the thing at all.
Comment 2 Adam Jackson 2012-04-16 16:38:55 EDT
I don't disagree, but they appear to have enabled the feature intentionally.

* Wed Oct 12 2011 Daniel P. Berrange <berrange@redhat.com> - 2:0.15.0-6
- Add BR on ceph-devel to enable RBD block device

I should clarify that libcephfs is not used even by qemu.  qemu simply needs librados and librdb, but since ceph isn't subpackaged it also brings in the rest of the ceph tools.
Comment 3 Daniel Berrange 2012-04-17 04:28:04 EDT
Agreed, it would be desirable to have the ceph RPM split up into several sub-RPMs, so QEMU doesn't pull in the whole lot, 90% of which it doesn't need.
Comment 4 Adam Jackson 2012-04-17 10:08:05 EDT
Created attachment 578050 [details]

Proposed package split.  Moves most libs to -libs, and libcephfs to -libcephfs.  -devel brings in both.  Size before is 36612992 bytes installed.  Sizes after:

% rpm -qp --qf="%{name} %{size}\n" ceph-{,libs-,libcephfs-}0.45-1.fc18.x86_64.rpm
ceph 27306744
ceph-libs 4856051
ceph-libcephfs 4457611

As a further modest size reduction it looks like ceph could be built with -fvisibility-inlines-hidden in CXXFLAGS.  At least, everything still links if you do that, though I haven't tried setting it up to see if it works.  That gives:

% rpm -qp --qf="%{name} %{size}\n" ceph-{,libs-,libcephfs-}0.45-1.fc18.x86_64.rpm
ceph 24947448
ceph-libs 3953067
ceph-libcephfs 3621387
Comment 5 Josef Bacik 2012-04-17 14:35:27 EDT
Alrighty I'll apply that and use -fvisibility-inlines-hidden and if the compiler flag breaks anything I'll just pull it out.
Comment 6 Adam Jackson 2012-06-07 13:29:33 EDT
* Wed May  9 2012 Josef Bacik <josef@toxicpanda.com> - 0.46-1
- updated to upstream 0.46
- broke out libcephfs (rhbz# 812975)

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