cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Gary Dusbabek <>
Subject Re: Rolling upgrade
Date Tue, 11 May 2010 13:05:06 GMT
On Mon, May 10, 2010 at 17:01, Tatsuya Kawano <> wrote:
> Hi,
> Does Cassandra support rolling restart recipe between minor version
> upgrade? I mean rolling restart is a way to upgrade Cassandra version
> or change configuration **without** bringing down the whole cluster.
> The recipe will be something like killing a couple of nodes at a time
> and starting them again with newer version (or newer configuration.)

We aim for this, but fell short on the 0.6 -> 0.6.1 upgrade.  A change
made it in that broker inter-node communication across versions.

> To make this possible, I think at least the RPC and SSTable format
> should be compatible between older and newer versions. Do you have any
> plan to change them in the future? Also, there might be some
> exceptions and certain combinations of versions can't coexist in a
> cluster (e.g. RPC or SSTable bug in the older version.) It will be
> great if such incompatibilities are documented in the release note.

RPC has versioning built in, so clients should be able to communicate
with servers that share the same major version.  Note that this is not
the same as the inter-node message format that nodes use to
communicate with each other.

The SSTable format has been stable since 0.4 (compatible with 0.5 and
0.6).  There are some breaking changes scheduled for 0.7, but none of
them have made it into trunk yet.

The commit log disk format has changed and will continue to change
from version to version.  You should flush it prior to upgrading a
node.  0.6.1 added 'drain' to the nodetool command to make this
process easier.


> Thanks,
> Tatsuya

View raw message