cassandra-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Elvis Pranskevichus (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CASSANDRA-5138) Provide a better CQL error when table data does not conform to CQL metadata.
Date Fri, 16 Aug 2013 19:42:49 GMT

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

Elvis Pranskevichus commented on CASSANDRA-5138:
------------------------------------------------

Guys, this completely broke writing to CQL3 tables from Thrift for me.

The name check is done against CFDefinition.columns, which seems to be populated with clustering
key columns only.  Thus, it is not possible to write into columns that are outside the PRIMARY
KEY.  Is this intentional?
                
> Provide a better CQL error when table data does not conform to CQL metadata.
> ----------------------------------------------------------------------------
>
>                 Key: CASSANDRA-5138
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-5138
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.2.0
>         Environment: Mac OS X running 1.2
>            Reporter: Brian ONeill
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>             Fix For: 2.0
>
>         Attachments: 5138-2.txt, 5138.txt, northpole.cql
>
>
> When you create a table via CQL, then insert into it via Thrift.  If you inadvertently
leave out a component of the column name, in CQL you receive a:
> TSocket read 0 bytes
> Server-side the following exception is logged:
> ERROR 15:19:18,016 Error occurred during processing of message.
> java.lang.ArrayIndexOutOfBoundsException: 3
> 	at org.apache.cassandra.cql3.statements.ColumnGroupMap.add(ColumnGroupMap.java:43)
> 	at org.apache.cassandra.cql3.statements.ColumnGroupMap.access$200(ColumnGroupMap.java:31)
> 	at org.apache.cassandra.cql3.statements.ColumnGroupMap$Builder.add(ColumnGroupMap.java:138)
> 	at org.apache.cassandra.cql3.statements.SelectStatement.process(SelectStatement.java:805)
> 	at org.apache.cassandra.cql3.statements.SelectStatement.processResults(SelectStatement.java:145)
> 	at org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:134)
> 	at org.apache.cassandra.cql3.statements.SelectStatement.execute(SelectStatement.java:61)
> 	at org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:132)
> 	at org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:140)
> 	at org.apache.cassandra.thrift.CassandraServer.execute_cql3_query(CassandraServer.java:1686)
> 	at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4074)
> 	at org.apache.cassandra.thrift.Cassandra$Processor$execute_cql3_query.getResult(Cassandra.java:4062)
> 	at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:32)
> 	at org.apache.thrift.TBaseProcessor.process(TBaseProcessor.java:34)
> 	at org.apache.cassandra.thrift.CustomTThreadPoolServer$WorkerProcess.run(CustomTThreadPoolServer.java:199)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> 	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> 	at java.lang.Thread.run(Thread.java:680)
> I'll submit a schema, and steps to reproduce.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message