Artem Soloviov created CASSANDRA-11066:
------------------------------------------

             Summary: Static column with secondary index on clustering column 
causes ArrayIndexOutOfBoundsException
                 Key: CASSANDRA-11066
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11066
             Project: Cassandra
          Issue Type: Bug
          Components: CQL, Local Write-Read Paths
         Environment: [cqlsh 5.0.1 | Cassandra 3.2.1 | CQL spec 3.4.0 | Native 
protocol v4]
            Reporter: Artem Soloviov


Enabling secondary index on clustering column breaks static column support:
{code}
Connected to Exodentity Cassandra Cluster at 127.0.0.1:9042.
[cqlsh 5.0.1 | Cassandra 3.2.1 | CQL spec 3.4.0 | Native protocol v4]
Use HELP for help.
cqlsh> CREATE KEYSPACE test WITH replication = {'class': 'SimpleStrategy', 
'replication_factor': 1};
cqlsh> USE test;
cqlsh:test> CREATE  TABLE t (k text , s text  static, i int, PRIMARY KEY (k, 
i));
cqlsh:test> CREATE INDEX t_idx ON t(i);
cqlsh:test> INSERT INTO t (k,s,i) VALUES ('k','static value', 0);
{code}
causes 
{noformat}
java.lang.ArrayIndexOutOfBoundsException: 0
        at 
org.apache.cassandra.db.AbstractClusteringPrefix.get(AbstractClusteringPrefix.java:59)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.index.internal.composites.ClusteringColumnIndex.getIndexedValue(ClusteringColumnIndex.java:60)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.index.internal.CassandraIndex.getIndexedValue(CassandraIndex.java:598)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.index.internal.CassandraIndex.insert(CassandraIndex.java:490)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.index.internal.CassandraIndex.access$100(CassandraIndex.java:53)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.index.internal.CassandraIndex$1.indexPrimaryKey(CassandraIndex.java:437)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.index.internal.CassandraIndex$1.insertRow(CassandraIndex.java:347)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.index.SecondaryIndexManager$WriteTimeTransaction.onInserted(SecondaryIndexManager.java:803)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:275)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.db.partitions.AtomicBTreePartition.addAllWithSizeDelta(AtomicBTreePartition.java:154)
 ~[apache-cassandra-3.2.1.jar:3.2.1]
        at org.apache.cassandra.db.Memtable.put(Memtable.java:239) 
~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1225) 
~[apache-cassandra-3.2.1.jar:3.2.1]
        at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:494) 
~[apache-cassandra-3.2.1.jar:3.2.1]
        at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:384) 
~[apache-cassandra-3.2.1.jar:3.2.1]
        at org.apache.cassandra.db.Mutation.apply(Mutation.java:202) 
~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.service.StorageProxy$$Lambda$223/885149282.run(Unknown 
Source) ~[na:na]
        at 
org.apache.cassandra.service.StorageProxy$7.runMayThrow(StorageProxy.java:1276) 
~[apache-cassandra-3.2.1.jar:3.2.1]
        at 
org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2433)
 [apache-cassandra-3.2.1.jar:3.2.1]
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) 
[na:1.8.0_51]
        at 
org.apache.cassandra.concurrent.AbstractTracingAwareExecutorService$FutureTask.run(AbstractTracingAwareExecutorService.java:164)
 [apache-cassandra-3.2.1.jar:3.2.1]
        at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) 
[apache-cassandra-3.2.1.jar:3.2.1]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_51]
{noformat}



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to