Database Reference
In-Depth Information
support and performance enhancements. It is extremely important to understand the
compatibility issues across the various Cassandra releases and in some cases the se-
quence you have to follow to avoid problems.
In general, Cassandra requires you to migrate through major and minor releases in
sequence. The reason for such sequential upgrades is that every release would educate
you on compatibility issues and its version upgrade process. For instance, Cassandra
2.0 releases are not compatible with versions older than the 1.2.9 release. Similarly, up-
grading from a 1.2.x Cassandra release to 2.1 requires doing a rolling restart to version
2.0.7 followed by version 2.1. Without the rolling restart, you should see the following
error in the Cassandra server log:
java.lang.RuntimeException: Can't open incompatible
SSTable! Current version jb, found file:
/var/lib/cassandra/data/system/schema_columnfamilies/
system-schema_columnfamilies-ib-5
at
org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:410)
at
org.apache.cassandra.db.ColumnFamilyStore.createColumnFamilyStore(ColumnFamilyStore.java:387)
at
org.apache.cassandra.db.Keyspace.initCf(Keyspace.java:309)
at
org.apache.cassandra.db.Keyspace.<init>(Keyspace.java:266)
at
org.apache.cassandra.db.Keyspace.open(Keyspace.java:110)
at
org.apache.cassandra.db.Keyspace.open(Keyspace.java:88)
at
org.apache.cassandra.db.SystemKeyspace.checkHealth(SystemKeyspace.java:499)
at
org.apache.cassandra.service.CassandraDaemon.setup(CassandraDaemon.java:228)
Hence it's recommended to follow release notes to properly address version
upgrade-related issues. As discussed above, to solve such version upgrade issues, we
need to perform a rolling restart. A rolling restart is one that doesn't bring down the
cluster and perform a version upgrade on each node, but rather one that performs the
upgrade on nodes with zero downtime. Nodes get upgraded and restarted one at a time
so that data availability can still be assured. This means a node with Cassandra 1.1.x
version, for example, would require first an upgrade to Cassandra version 1.2.9 and
Search WWH ::




Custom Search