Riak packaging for RPM-based distros

Aleksey Morarash aleksey.morarash at gmail.com
Wed Jan 9 16:34:23 EST 2013

2013/1/9 Jared Morrow <jared at basho.com>
> In our case, making a distributed database that people depend on to be stable and
> performant also requires us to control the Erlang VM we use.  In a particular case,
> we've been fighting Erlang scheduler issues in regards to our use of NIF's that has
> changed behavior between versions of Erlang.  Because of this issue, we haven't
> moved forward on using new versions past R15B02 of erlang.  Because we are
> responsible for any problems with Riak, I do not see anytime in the future we will
> give up control of the Erlang we use at the expense of a slightly larger rpm / deb / tgz
> size.  That was just one example, another is the use of HiPE or no HiPE where
> we've found segfaults when using HiPE on SunOS or *BSD due to fixed memory buffer sizes.

Hm. I`m familiar with such problems too :)

> Regarding packaging components as separate RPM's.  This is another thing that
> distributions have tried to get us to do, make a riak_core, riak_kv, erlang_js, etc.,
> etc. rpm.  Again, I see no benefit at all to people who use riak.  This is a benefit
> solely to fit into packaging guidelines made by distributions.  When testing such a
> complicated system such as Riak, breaking it up into 30 pieces would simply make
> testing harder and the product less stable.  Unless you are writing a riak_core app,
> who would just *just* want a riak_core RPM anyway?

Agree. Code, related only to Riak we can package in one package.
Creating package for each Erlang application is not strict dogma.

> Right now if someone has a problem, I can say, "tell me what ./riak version says"
> and know exactly what is running.

Mostly true, but... Most deps in 'rebar.config' files links to HEAD of
'master' branch. Seems output of './riak version' is not enough.
Anyway, when packaging is done right way (no packages was built with
new code but old version), 'rpm -q $pkgname' (for example) will give
good start point.

>> - honor filesystem hierarchy of underlying OS.
> This one I'd like to hear more about.  I've made some changes along the way for systems
> I didn't know as much about at first pass (mainly SunOS flavors), but I know for a fact we
> haven't got everything right.  If you have some examples of where we are doing it wrong
> in regards to our install, please let me know or file a bug at https://github.com/basho/riak

Ok, I will.

More information about the riak-users mailing list