Lerh Chuan Low created CASSANDRA-11882:
------------------------------------------

             Summary: Clustering Key with ByteBuffer size > 64k throws 
Assertion Error
                 Key: CASSANDRA-11882
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11882
             Project: Cassandra
          Issue Type: Bug
          Components: CQL, Streaming and Messaging
            Reporter: Lerh Chuan Low
            Priority: Minor
             Fix For: 2.1.x


Setup:

{code}
CREATE KEYSPACE Blues WITH REPLICATION = { 'class' : 'SimpleStrategy', 
'replication_factor' : 2};
CREATE TABLE test (a text, b text, PRIMARY KEY ((a), b))
{code}

There currently doesn't seem to be an existing check for selecting clustering 
keys that are larger than 64k. So if we proceed to do the following select:

{code}
CONSISTENCY ALL;
SELECT * FROM Blues.test WHERE a = 'foo' AND b = 'something larger than 64k';
{code}

An AssertionError is thrown in `ByteBufferUtil` with just a number and an error 
message detailing 'Coordinator node timed out waiting for replica nodes 
responses' . Additionally, because an error extends Throwable (it's not a 
subclass of Exception), it's not caught so the connection between the 
coordinator node and the other nodes which have the replicas seem to be 'stuck' 
until it's restarted. Any other subsequent queries, even if it's just SELECT 
where a = 'foo' and b = 'bar', will always return the Coordinator timing out 
waiting for replica nodes responses'.



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

Reply via email to