[ 
https://issues.apache.org/jira/browse/CASSANDRA-6707?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13903159#comment-13903159
 ] 

Piotr Kołaczkowski commented on CASSANDRA-6707:
-----------------------------------------------

If it can deserialize, it should do it. If it cannot (unsupported version), it 
should bail out, shout at the user "don't do this! do nodetool drain first!" 
and terminate without touching any data. This way it is now, I'm pretty sure 
some of the customers will run into this, and telling them it was their fault 
wouldn't make them less unhappy.

> AIOOBE when doing select count(*) from on a mixed cluster.
> ----------------------------------------------------------
>
>                 Key: CASSANDRA-6707
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-6707
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>         Environment: old nodes: Cassandra 1.2.16 from DSE 3.2.5  (unreleased)
> new node: Cassandra  2.0.5 from DSE 4.0.0 (unreleased)
>            Reporter: Piotr Kołaczkowski
>            Assignee: Tyler Hobbs
>            Priority: Critical
>         Attachments: 6707.patch
>
>
> After upgrading one node from 1.2 to 2.0, the following query fails with 
> timeout:
> {noformat}
> Connected to test at localhost:9160.
> [cqlsh 4.1.0 | Cassandra 2.0.5.1-SNAPSHOT | CQL spec 3.1.1 | Thrift protocol 
> 19.39.0]
> Use HELP for help.
> cqlsh> select count(*) from cfs.sblocks;
> Request did not complete within rpc_timeout.
> {noformat}
> Table definition:
> {noformat}
> cqlsh> describe columnfamily cfs.sblocks;
> CREATE TABLE sblocks (
>   key blob,
>   column1 blob,
>   value blob,
>   PRIMARY KEY (key, column1)
> ) WITH COMPACT STORAGE AND
>   bloom_filter_fp_chance=0.000068 AND
>   caching='KEYS_ONLY' AND
>   comment='Stores blocks of information associated with a inode' AND
>   dclocal_read_repair_chance=0.000000 AND
>   gc_grace_seconds=864000 AND
>   index_interval=128 AND
>   read_repair_chance=0.100000 AND
>   replicate_on_write='true' AND
>   populate_io_cache_on_flush='true' AND
>   default_time_to_live=0 AND
>   speculative_retry='99.0PERCENTILE' AND
>   memtable_flush_period_in_ms=0 AND
>   compaction={'class': 
> 'com.datastax.bdp.hadoop.cfs.compaction.CFSCompactionStrategy'} AND
>   compression={};
> {noformat}
> The 1.2 node reports the following error:
> {noformat}
> ERROR 08:38:02,006 Exception in thread Thread[Thread-32,5,main]
> java.lang.ArrayIndexOutOfBoundsException: 36
>       at org.apache.cassandra.net.MessageIn.read(MessageIn.java:59)
>       at 
> org.apache.cassandra.net.IncomingTcpConnection.receiveMessage(IncomingTcpConnection.java:208)
>       at 
> org.apache.cassandra.net.IncomingTcpConnection.handleModernVersion(IncomingTcpConnection.java:140)
>       at 
> org.apache.cassandra.net.IncomingTcpConnection.run(IncomingTcpConnection.java:83)
> {noformat}
> There were no errors during the upgrade.



--
This message was sent by Atlassian JIRA
(v6.1.5#6160)

Reply via email to