Details
-
Bug
-
Status: Resolved
-
Normal
-
Resolution: Information Provided
-
None
-
None
-
None
-
Normal
Description
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
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
The following python uses pycassa to exercise the range_slice Thrift API:
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.ALL) 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.ALL)
Attachments
Issue Links
- relates to
-
CASSANDRA-6966 Errors with Super Columns, mixup of 1.2 and 2.0
- Resolved
-
CASSANDRA-8903 Super Columns exception during upgrade from C* 1.2.18 to C* 2.0.11
- Resolved
-
CASSANDRA-14439 ClassCastException with mixed 1.2.18 + 2.0.17 environment
- Resolved