Mike Adamson created CASSANDRA-16482:
----------------------------------------

             Summary: CQL schema generated by DESCRIBE KEYSPACE fails to import 
with custom indexes
                 Key: CASSANDRA-16482
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-16482
             Project: Cassandra
          Issue Type: Bug
          Components: CQL/Syntax
            Reporter: Mike Adamson


The CQL schema generated by a DESCRIBE KEYSPACE on a keyspace with a table that 
contains a custom index cannot be reimported.

The reimport of the schema fails with:
{noformat}
InvalidRequest: Error from server: code=2200 [Invalid query] message="Cannot 
specify class_name as a CUSTOM option"
{noformat}
The reason for this is that the custom index definition is created with 
{{class_name}} and {{target}} options added to it in it's {{WITH OPTIONS}} 
section. This is then picked up by the {{IndexAttributes.validate}} method that 
specifically rejects them.

Note: This only seems to happen if the custom index was created with options in 
the first place. So if the {{CREATE CUSTOM INDEX}} statement didn't originally 
have a {{WITH OPTIONS}} section then it won't have the {{class_name}} and 
{{target}} options added to it.

h3. Steps to reproduce
{noformat}
CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy', 
'replication_factor': '1'};
CREATE TABLE test.test (id int PRIMARY KEY, value text);
CREATE CUSTOM INDEX ON test.test(value) USING 
'org.apache.cassandra.index.sasi.SASIIndex' WITH OPTIONS = {'is_literal': 
'false'};
DESCRIBE KEYSPACE test;
{noformat}
Trying to import the resultant schema will fail.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to