Ken Hancock created CASSANDRA-14414:
---------------------------------------
Summary: Errors in Supercolumn support in 2.0 upgrade
Key: CASSANDRA-14414
URL: https://issues.apache.org/jira/browse/CASSANDRA-14414
Project: Cassandra
Issue Type: Bug
Reporter: Ken Hancock
In upgrading from 1.2.18 to 2.0.17, the following exceptions started showing in
cassandra log files when the 2.0.17 node is chosen as the coordinator. CL=ALL
reads will fail as a result.
The following ccm script will create a 3-node cassandra cluster and upgrade the
3rd node to cassandra 2.0.17
{code}
ccm create -n3 -v1.2.17 test
ccm start
ccm node1 cli -v -x "create keyspace test with
placement_strategy='org.apache.cassandra.locator.SimpleStrategy' and
strategy_options={replication_factor:3}"
ccm node1 cli -v -x "use test;
create column family super with column_type = 'Super' and
key_validation_class='IntegerType' and comparator = 'IntegerType' and
subcomparator = 'IntegerType' and default_validation_class = 'AsciiType'"
ccm node1 cli -v -x "use test;
create column family shadow with column_type = 'Super' and
key_validation_class='IntegerType' and comparator = 'IntegerType' and
subcomparator = 'IntegerType' and default_validation_class = 'AsciiType'"
ccm node1 cli -v -x "use test;
set super[1][1][1]='1-1-1';
set super[1][1][2]='1-1-2';
set super[1][2][1]='1-2-1';
set super[1][2][2]='1-2-2';
set super[2][1][1]='2-1-1';
set super[2][1][2]='2-1-2';
set super[2][2][1]='2-2-1';
set super[2][2][2]='2-2-2';
set super[3][1][1]='3-1-1';
set super[3][1][2]='3-1-2';
"
ccm flush
ccm node3 stop
ccm node3 setdir -v2.0.17
ccm node3 start
ccm node3 nodetool upgradesstables
{code}
The following python uses pycassa to exercise the range_slice Thrift API:
{code}
import pycassa
from pycassa.pool import ConnectionPool
from pycassa.columnfamily import ColumnFamily
from pycassa import ConsistencyLevel
pool = ConnectionPool('test', server_list=['127.0.0.3:9160'], max_retries=0)
super = ColumnFamily(pool, 'super')
print "fails with ClassCastException"
super.get(1, columns=[1,2], read_consistency_level=ConsistencyLevel.ONE)
print "fails with RuntimeException: Cannot convert filter to old super column
format...""
super.get(1, column_start=2, column_finish=3,
read_consistency_level=ConsistencyLevel.ONE)
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]