[
https://issues.apache.org/jira/browse/CASSANDRA-7455?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan Ellis updated CASSANDRA-7455:
--------------------------------------
Reviewer: Aleksey Yeschenko
> AssertionError with static columns
> ----------------------------------
>
> Key: CASSANDRA-7455
> URL: https://issues.apache.org/jira/browse/CASSANDRA-7455
> Project: Cassandra
> Issue Type: Bug
> Reporter: graham sanderson
> Assignee: Sylvain Lebresne
> Priority: Minor
> Fix For: 2.0.10
>
> Attachments: 7455.txt
>
>
> Depending on how you insert static column values, regular values (and
> implicitly static column row markers and regular column rows markers), you
> can cause an AssertionError on select (collision between some of the empty
> composite name fragments) if you have an empty partition key
> Example:
> {code}
> cqlsh:test> create table select_error(pkey text, ckey text, value text,
> static_value text static, PRIMARY KEY(pkey, ckey));
> cqlsh:test> insert into select_error(pkey, static_value) VALUES('partition1',
> 'static value');
> cqlsh:test> insert into select_error(pkey, ckey, value) VALUES('partition1',
> '', 'value');
> cqlsh:test> select * from select_error;
> TSocket read 0 bytes
> {code}
> Causes
> {code}
> java.lang.AssertionError
> at
> org.apache.cassandra.cql3.statements.ColumnGroupMap.add(ColumnGroupMap.java:64)
> at
> org.apache.cassandra.cql3.statements.ColumnGroupMap.access$200(ColumnGroupMap.java:32)
> at
> org.apache.cassandra.cql3.statements.ColumnGroupMap$Builder.add(ColumnGroupMap.java:151)
> at
> org.apache.cassandra.cql3.statements.SelectStatement.processColumnFamily(SelectStatement.java:1202)
> at
> org.apache.cassandra.cql3.statements.SelectStatement.process(SelectStatement.java:1078)
> at
> org.apache.cassandra.cql3.statements.SelectStatement.processResults(SelectStatement.java:280)
> at
> org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:257)
> at
> org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:222)
> at
> org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:60)
> at
> org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:158)
> at
> org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:175)
> at
> org.apache.cassandra.thrift.CassandraServer.execute_cql3_query(CassandraServer.java:1958)
> at
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4486)
> at
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4470)
> at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
> at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:39)
> at
> org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:201)
> at
> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
> at java.lang.Thread.run(Thread.java:744)
> {code}
--
This message was sent by Atlassian JIRA
(v6.2#6252)