On Jun 4, 2010, at 12:44 PM, Roland Dreier wrote:

>> So, the bigger problem here would seem to be one of long-term support.
>> In other words, trying to find common ground between release cycles.
> 
> I really think the issue of versions and support cycles is not that big
> a deal.  There are lots of places that one could stick updated packages.
> 
> The big problem IMO that needs to be solved to package Cassandra is the
> same as for a lot of other Java software: the fact that there are so
> many dependencies, and Cassandra just ships them as binary jar files as
> part of the main package.  Any sane distro packaging is going to want
> separate packages for all the independently developed dependencies --
> for example if a security issue is found, a distro wants to patch it
> once, not have to hunt down which of a 100 Java packages shipped their
> own private jar with the bug.
> 

Right, this is precisely the reason we do make the effort to package things 
when it makes sense. Projects that are fully matured and have large user bases 
eventually stabilize. We may have jumped the gun a bit by trying to get 
Cassandra and others into the distribution this early.

The question now, is whether it makes sense to package cassandra and its 
dependencies *today*.

A couple of us on the server team have thrown around some ideas as to what 
would be the best use of our time to support projects like Cassandra running on 
Ubuntu. Cassandra is definitely not alone in releasing often and deprecating 
support for previous releases quickly. One thought has been to simply separate 
the distro integration from the upstream binaries that are shipped.

So, we would just produce a package that needs the actual Cassandra tarball to 
be extracted somewhere predictable (/opt most likely). We could call this 
package 'cassandra-support' or 'cassandra-init'. Basically just an upstart 
config, some example configurations that put things in the 'debian places', and 
some documentation on how to make sure cassandra is working.

This would allow users to continue to upgrade cassandra on their older 
machines. Unfortunately, it means Cassandra doesn't make it into the default 
enabled repositories on Ubuntu, or debian. But maybe once the dependencies 
stabilize, it will make more sense to make the effort to package it then.

Reply via email to