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

Sylvain Lebresne commented on CASSANDRA-4706:
---------------------------------------------

The code lacks proper validation and I'll look into it but let me note that 
mixing counter column with non-counter columns (set being non-counter) is not 
allowed (not more than it is on thrift).
                
> CQL3 CREATE TABLE with set and counter causes 
> java.lang.IllegalArgumentException
> --------------------------------------------------------------------------------
>
>                 Key: CASSANDRA-4706
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-4706
>             Project: Cassandra
>          Issue Type: Bug
>          Components: Core
>    Affects Versions: 1.2.0 beta 1
>         Environment: rev 60bf68ca (tagged 1.2.0-beta1-tentative)
> cqlsh 2.2.0 | Cassandra 1.2.0-beta1-SNAPSHOT | CQL spec 3.0.0 | Thrift 
> protocol 19.34.0
> OS X 10.8.2
> java version "1.6.0_35"
> Java(TM) SE Runtime Environment (build 1.6.0_35-b10-428-11M3811)
> Java HotSpot(TM) 64-Bit Server VM (build 20.10-b01-428, mixed mode)
> Ubuntu 12.04.1 LTS
> java version "1.7.0_07"
> Java(TM) SE Runtime Environment (build 1.7.0_07-b10)
> Java HotSpot(TM) 64-Bit Server VM (build 23.3-b01, mixed mode)
>            Reporter: Jonathan Rudenberg
>            Assignee: Sylvain Lebresne
>            Priority: Minor
>             Fix For: 1.2.0 beta 2
>
>
> Running a freshly compiled cassandra with no data, and a brand new keyspace 
> (SimpleStrategy, replication_factor 1)
> {noformat}
> cqlsh:test> CREATE TABLE test (id bigint PRIMARY KEY, count counter, things 
> set<text>);
> TSocket read 0 bytes
> {noformat}
> {noformat}
> ERROR 11:25:54,926 Error occurred during processing of message.
> java.lang.IllegalArgumentException
>       at java.nio.Buffer.limit(Buffer.java:247)
>       at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getBytes(AbstractCompositeType.java:50)
>       at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getWithShortLength(AbstractCompositeType.java:59)
>       at 
> org.apache.cassandra.db.marshal.AbstractCompositeType.getString(AbstractCompositeType.java:143)
>       at org.apache.cassandra.config.CFMetaData.validate(CFMetaData.java:1064)
>       at 
> org.apache.cassandra.service.MigrationManager.announceNewColumnFamily(MigrationManager.java:123)
>       at 
> org.apache.cassandra.cql3.statements.CreateColumnFamilyStatement.announceMigration(CreateColumnFamilyStatement.java:100)
>       at 
> org.apache.cassandra.cql3.statements.SchemaAlteringStatement.execute(SchemaAlteringStatement.java:83)
>       at 
> org.apache.cassandra.cql3.QueryProcessor.processStatement(QueryProcessor.java:108)
>       at 
> org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:116)
>       at 
> org.apache.cassandra.thrift.CassandraServer.execute_cql_query(CassandraServer.java:1677)
>       at 
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3721)
>       at 
> org.apache.cassandra.thrift.Cassandra$Processor$execute_cql_query.getResult(Cassandra.java:3709)
>       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:184)
>       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)
> {noformat}

--
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

Reply via email to