You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Yeshvanthni (JIRA)" <ji...@apache.org> on 2014/09/24 19:14:33 UTC

[jira] [Created] (CASSANDRA-8000) Schema Corruption when 1.2.15->2.0.9 rolling upgrade mixed mode

Yeshvanthni created CASSANDRA-8000:
--------------------------------------

             Summary: Schema Corruption when 1.2.15->2.0.9 rolling upgrade mixed mode
                 Key: CASSANDRA-8000
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-8000
             Project: Cassandra
          Issue Type: Bug
            Reporter: Yeshvanthni


Steps to reproduce:

1. Setup multi-node Cassandra 1.2.15 with following schema 

{code}
CREATE KEYSPACE testkeyspace WITH replication = {
  'class': 'SimpleStrategy',
  'replication_factor':2
};

USE testkeyspace;

CREATE TABLE test (
  testid timeuuid PRIMARY KEY,
  businesskey timestamp,
  createdby text,
  createdtimestamp timestamp,
  testname text
) ;


insert into test(testid,businesskey,createdby,createdtimestamp,partitionname) VALUES (now(),dateOf(now()),'user',dateOf(now()),'test');

{code}


2. Roll one node to Cassandra 2.0.9 
         - Snapshot 1.2.15 
         - Decommission the old 1.2.15
         - Start Cassandra 2.0.9 pointing to the same data folder  as 1.2.15
         - nodetool upgradesstables 

3. Query against 1.2.15 nodes of the cluster with CQLSH

It returns an additional primary key column with null value in it. Describe shows that the table has somehow got the additional column

CREATE TABLE test (
  testid timeuuid PRIMARY KEY,
  testid timeuuid,
  businesskey timestamp,
  createdby text,
  createdtimestamp timestamp,
  testname text
) ;


Observation:

This could be because of the change in Cassandra 2.x to store all columns including the key columns in schema_columns while earlier key columns were stored schema_columnfamilies.

This blocks rolling upgrades and fails the cluster when in mixed mode.






--
This message was sent by Atlassian JIRA
(v6.3.4#6332)