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.