[
https://issues.apache.org/jira/browse/CASSANDRA-16656?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Brandon Williams updated CASSANDRA-16656:
-----------------------------------------
Bug Category: Parent values: Correctness(12982)
Complexity: Normal
Discovered By: User Report
Fix Version/s: 3.11.x
Severity: Normal (was: Low)
Status: Open (was: Triage Needed)
> Assertion Error on invalid ALTER TABLE Command
> ----------------------------------------------
>
> Key: CASSANDRA-16656
> URL: https://issues.apache.org/jira/browse/CASSANDRA-16656
> Project: Cassandra
> Issue Type: Bug
> Components: CQL/Syntax
> Reporter: Norbert Schultz
> Priority: Low
> Fix For: 3.11.x
>
>
> If there is an invalid ALTER TABLE statement (extra comma), then Cassandra
> responds with an assertion error.
>
> This happens on 3.11.10 but not on 4.0-rc1
> This statement fails:
> {code:java}
> > cqlsh
> Connected to Test Cluster at 127.0.0.1:9042.
> [cqlsh 5.0.1 | Cassandra 3.11.10 | CQL spec 3.4.4 | Native protocol v4]
> Use HELP for help.
> cqlsh> CREATE KEYSPACE foo WITH REPLICATION = { 'class' : 'SimpleStrategy',
> 'replication_factor' : 1 };
> cqlsh> use foo;
> cqlsh:foo> create table test(id INT, PRIMARY KEY(id));
> cqlsh:foo> alter table test ADD (x INT, y INT,);
> ServerError: java.lang.AssertionError
> {code}
> The following can be found inside the Log:
> {code}
> java.lang.AssertionError: null
> at
> org.apache.cassandra.cql3.statements.AlterTableStatementColumn.<init>(AlterTableStatementColumn.java:36)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.cql3.Cql_Parser.alterTableStatement(Cql_Parser.java:5820)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.cql3.Cql_Parser.cqlStatement(Cql_Parser.java:628)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at org.apache.cassandra.cql3.CqlParser.cqlStatement(CqlParser.java:604)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at org.apache.cassandra.cql3.CqlParser.query(CqlParser.java:344)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.cql3.CQLFragmentParser.parseAnyUnhandled(CQLFragmentParser.java:76)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.cql3.QueryProcessor.parseStatement(QueryProcessor.java:589)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.cql3.QueryProcessor.getStatement(QueryProcessor.java:559)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:247)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.cql3.QueryProcessor.process(QueryProcessor.java:241)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.transport.messages.QueryMessage.execute(QueryMessage.java:116)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.transport.Message$Dispatcher.processRequest(Message.java:685)
> [apache-cassandra-3.11.10.jar:3.11.10]
> at
> org.apache.cassandra.transport.Message$Dispatcher.lambda$channelRead0$0(Message.java:591)
> [apache-cassandra-3.11.10.jar:3.11.10]
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
> ~[na:1.8.0_292]
> at
> org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:162)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:113)
> ~[apache-cassandra-3.11.10.jar:3.11.10]
> at java.lang.Thread.run(Thread.java:748) ~[na:1.8.0_292]
> {code}
> Cassandra 4.0-rc1 responds as expected:
> {code}
> cqlsh:foo> alter table test ADD (x INT, y INT,);
> SyntaxException: line 1:35 no viable alternative at input ')' (...(x INT, y
> INT,[)]...)
> {code}
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]