All of lore.kernel.org
 help / color / mirror / Atom feed
From: Brad Hubbard <bhubbard@redhat.com>
To: Sage Weil <sage@newdream.net>
Cc: Alfredo Deza <adeza@redhat.com>, kefu chai <tchaikov@gmail.com>,
	Nathan Cutler <ncutler@suse.cz>,
	Gregory Farnum <gfarnum@redhat.com>,
	ceph-devel <ceph-devel@vger.kernel.org>,
	Ken Dreyer <kdreyer@redhat.com>
Subject: Re: increasingly large packages and longer build times
Date: Mon, 28 Aug 2017 08:30:55 +1000	[thread overview]
Message-ID: <CAF-wwdH7ummeA96zovQn3hu2pyaAG=gvgyqDVDSfz=e0Ua7OHA@mail.gmail.com> (raw)
In-Reply-To: <alpine.DEB.2.11.1708241327080.20435@piezo.novalocal>

On Thu, Aug 24, 2017 at 11:36 PM, Sage Weil <sage@newdream.net> wrote:
> On Thu, 24 Aug 2017, Alfredo Deza wrote:
>> On Thu, Aug 24, 2017 at 4:41 AM, kefu chai <tchaikov@gmail.com> wrote:
>> > On Wed, Aug 23, 2017 at 2:58 AM, Alfredo Deza <adeza@redhat.com> wrote:
>> >> On Tue, Aug 22, 2017 at 9:35 AM, kefu chai <tchaikov@gmail.com> wrote:
>> >>> On Tue, Aug 22, 2017 at 4:27 PM, Nathan Cutler <ncutler@suse.cz> wrote:
>> >>>>> my main concern would be the downstream. how shall we accommodate the
>> >>>>> packaging of downstream? for example, what if the boost package
>> >>>>> maintainers of SuSE/fedora/debian/ubuntu are not ready to package the
>> >>>>> boost version we want to use in future?
>> >>>>>
>> >>>>> but as long as we don't require newer boost to build, we are safe on
>> >>>>> debian and ubuntu at this moment. as boost 1.61 is required for
>> >>>>> building ceph, and both debian unstable and ubuntu artful package
>> >>>>> boost v1.62.
>> >>>>
>> >>>>
>> >>>> The very latest cutting-edge versions of the distros may ship boost >= 1.61
>> >>>> but the stable versions most likely do not.
>> >>>
>> >>> yeah. but, IIRC, debian stable does not accepts new packages unless
>> >>> they contain critical bug fixes. the new packages will go to the
>> >>> unstable or experimental distribution first. so, presumably, debian
>> >>> will be fine. guess ubuntu is using similar strategy for including
>> >>> packages in its LTS distros.
>> >>
>> >> Why are you concerned with distros and the availability to have a
>> >> package at the version that we need?
>> >>
>> >> We publish our own repos, where we could have whatever boost version
>> >> we need. Distro package maintainers have to
>> >> decide what they can or can't do. For us it shouldn't matter.
>> >>
>> >
>> > i think it matters. and i believe it'd be desirable if Ceph can be
>> > easier for downstream to package. if the downstream finds that Ceph is
>> > too difficult to package, and give up, that's surely not the end of
>> > the world. but it could decrease the popularity level of ceph, and in
>> > long term, it might hurt Ceph.
>>
>> I fully agree here Kefu, but we don't make it easier by embedding
>> libraries! Those need to
>> get removed in distros. Most distros will *not* allow embedding
>> dependencies like we do. That means that someone (probably
>> a package maintainer) will have to remove these, figure out what
>> versions are needed, and attempt to make it
>> work with whatever that distro version will provide.
>
> There are several categories here:
>
> Yes:
> - A bunch of stuff we embed can definitely be separated out; we embedded
> only because distros didn't have packages yet (e.g., zstd).  As soon as
> they are packages the submodules can be removed.
>
> Maybe:
> - The big one, though, is boost, which is mostly headers... only a *tiny*
> bit of code can be dynamically loaded, so there is minimal benefit to
> using the distro package... except that 'git clone' and the build are
> slightly faster. We could use a more up to date distro package, but we
> won't be able to put it in el7.  I worry that cases like this will be
> problematic: even if we build the updated package, it may be undesireable
> to require users to install a newer version on their system.

Should we ship a ceph-boost, etc. package then that does not overwrite
distro packages (installs in a different location)?

>
> No:
> - Then there is stuff that's fast-moving and new and unlikely to be
> helpful if separated out (spdk, dpdk).  The distro packages will never be
> up to date.  I'm not sure they even have any dynamically-linkable code...
> would have to check.
>
> - And then rocksdb and civetweb are truly embedded. We sometimes have to
> carry modifications so it is a bad idea to use a distro package (our
> modifications may be incompatible with other users on the system).
>
> Note that although distros complain about static linking, they have never
> actually taken a stand on the issue with Ceph.  *shrug*
>
> sage
> --
> To unsubscribe from this list: send the line "unsubscribe ceph-devel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



-- 
Cheers,
Brad

  reply	other threads:[~2017-08-27 22:30 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-02 13:39 increasingly large packages and longer build times Alfredo Deza
2017-08-07 14:58 ` Ken Dreyer
2017-08-07 15:30   ` Willem Jan Withagen
2017-08-08  6:59     ` Fabian Grünbichler
2017-08-08  7:29       ` Willem Jan Withagen
2017-08-16 21:44   ` Gregory Farnum
2017-08-16 22:30     ` John Spray
2017-08-21 13:28       ` Alfredo Deza
2017-08-22  7:01     ` kefu chai
2017-08-22  8:27       ` Nathan Cutler
2017-08-22 13:35         ` kefu chai
2017-08-22 13:52           ` Matt Benjamin
2017-08-22 14:09             ` Willem Jan Withagen
2017-08-22 15:26               ` kefu chai
2017-08-22 15:43                 ` Willem Jan Withagen
2017-08-22 18:58           ` Alfredo Deza
2017-08-22 19:01             ` Nathan Cutler
2017-08-24  8:41             ` kefu chai
2017-08-24 11:35               ` Alfredo Deza
2017-08-24 13:36                 ` Sage Weil
2017-08-27 22:30                   ` Brad Hubbard [this message]
2017-08-30 17:17                     ` Ken Dreyer
2017-08-30 17:53                       ` John Spray
2017-08-30 21:59                         ` Brad Hubbard
2017-08-30 22:07                         ` Ken Dreyer
2017-08-30 23:00                           ` Brad Hubbard
2017-08-30 23:09                           ` John Spray
2017-08-31  2:25                             ` Sage Weil
2017-08-23 14:53       ` Ken Dreyer
2017-08-24  8:30         ` kefu chai
2017-10-27  3:21       ` kefu chai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAF-wwdH7ummeA96zovQn3hu2pyaAG=gvgyqDVDSfz=e0Ua7OHA@mail.gmail.com' \
    --to=bhubbard@redhat.com \
    --cc=adeza@redhat.com \
    --cc=ceph-devel@vger.kernel.org \
    --cc=gfarnum@redhat.com \
    --cc=kdreyer@redhat.com \
    --cc=ncutler@suse.cz \
    --cc=sage@newdream.net \
    --cc=tchaikov@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.