[jira] [Commented] (CASSANDRA-11169) [sasi] exception thrown when trying to index row with index on set
[ https://issues.apache.org/jira/browse/CASSANDRA-11169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15151289#comment-15151289 ] Jack Krupansky commented on CASSANDRA-11169: To be clear, "Fixed" means that a plain English error is given for the CQL statement rather than a nasty-looking exception. Is it still the intent to eventually/soon implement indexing of the column values of collection columns? Is there a Jira for that? Is it like a 3.x improvement or more like 4.x? > [sasi] exception thrown when trying to index row with index on set > > > Key: CASSANDRA-11169 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11169 > Project: Cassandra > Issue Type: Bug > Components: sasi >Reporter: Jon Haddad >Assignee: Pavel Yaskevich > Fix For: 3.4 > > > I have a brand new cluster, built off 1944bf507d66b5c103c136319caeb4a9e3767a69 > I created a new table with a set, then a SASI index on the set. I > tried to insert a row with a set, Cassandra throws an exception and becomes > unavailable. > {code} > cqlsh> create KEYSPACE test WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1}; > cqlsh> use test; > cqlsh:test> create table a (id int PRIMARY KEY , s set ); > cqlsh:test> create CUSTOM INDEX on a(s) USING > 'org.apache.cassandra.index.sasi.SASIIndex'; > cqlsh:test> insert into a (id, s) values (1, {'jon', 'haddad'}); > WriteTimeout: code=1100 [Coordinator node timed out waiting for replica > nodes' responses] message="Operation timed out - received only 0 responses." > info={'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} > {code} > Cassandra stacktrace: > {code} > java.lang.AssertionError: null > at org.apache.cassandra.db.rows.BTreeRow.getCell(BTreeRow.java:212) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.getValueOf(ColumnIndex.java:194) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.index(ColumnIndex.java:95) > ~[main/:na] > at > org.apache.cassandra.index.sasi.SASIIndex$1.insertRow(SASIIndex.java:247) > ~[main/:na] > at > org.apache.cassandra.index.SecondaryIndexManager$WriteTimeTransaction.onInserted(SecondaryIndexManager.java:808) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:335) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:295) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.buildInternal(BTree.java:136) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.build(BTree.java:118) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.update(BTree.java:177) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition.addAllWithSizeDelta(AtomicBTreePartition.java:156) > ~[main/:na] > at org.apache.cassandra.db.Memtable.put(Memtable.java:244) ~[main/:na] > at > org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1216) > ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:531) ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:399) ~[main/:na] > at org.apache.cassandra.db.Mutation.applyFuture(Mutation.java:202) > ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:214) ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:228) ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$$Lambda$201/413275033.run(Unknown > Source) ~[na:na] > at > org.apache.cassandra.service.StorageProxy$8.runMayThrow(StorageProxy.java:1343) > ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2520) > ~[main/:na] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[na:1.8.0_45] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) > ~[main/:na] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) > [main/:na] > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) > [main/:na] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45] > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11169) [sasi] exception thrown when trying to index row with index on set
[ https://issues.apache.org/jira/browse/CASSANDRA-11169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15149912#comment-15149912 ] Jason Brown commented on CASSANDRA-11169: - +1, lgtm > [sasi] exception thrown when trying to index row with index on set > > > Key: CASSANDRA-11169 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11169 > Project: Cassandra > Issue Type: Bug > Components: sasi >Reporter: Jon Haddad >Assignee: Pavel Yaskevich > Fix For: 3.4 > > > I have a brand new cluster, built off 1944bf507d66b5c103c136319caeb4a9e3767a69 > I created a new table with a set, then a SASI index on the set. I > tried to insert a row with a set, Cassandra throws an exception and becomes > unavailable. > {code} > cqlsh> create KEYSPACE test WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1}; > cqlsh> use test; > cqlsh:test> create table a (id int PRIMARY KEY , s set ); > cqlsh:test> create CUSTOM INDEX on a(s) USING > 'org.apache.cassandra.index.sasi.SASIIndex'; > cqlsh:test> insert into a (id, s) values (1, {'jon', 'haddad'}); > WriteTimeout: code=1100 [Coordinator node timed out waiting for replica > nodes' responses] message="Operation timed out - received only 0 responses." > info={'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} > {code} > Cassandra stacktrace: > {code} > java.lang.AssertionError: null > at org.apache.cassandra.db.rows.BTreeRow.getCell(BTreeRow.java:212) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.getValueOf(ColumnIndex.java:194) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.index(ColumnIndex.java:95) > ~[main/:na] > at > org.apache.cassandra.index.sasi.SASIIndex$1.insertRow(SASIIndex.java:247) > ~[main/:na] > at > org.apache.cassandra.index.SecondaryIndexManager$WriteTimeTransaction.onInserted(SecondaryIndexManager.java:808) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:335) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:295) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.buildInternal(BTree.java:136) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.build(BTree.java:118) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.update(BTree.java:177) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition.addAllWithSizeDelta(AtomicBTreePartition.java:156) > ~[main/:na] > at org.apache.cassandra.db.Memtable.put(Memtable.java:244) ~[main/:na] > at > org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1216) > ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:531) ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:399) ~[main/:na] > at org.apache.cassandra.db.Mutation.applyFuture(Mutation.java:202) > ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:214) ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:228) ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$$Lambda$201/413275033.run(Unknown > Source) ~[na:na] > at > org.apache.cassandra.service.StorageProxy$8.runMayThrow(StorageProxy.java:1343) > ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2520) > ~[main/:na] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[na:1.8.0_45] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) > ~[main/:na] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) > [main/:na] > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) > [main/:na] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45] > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11169) [sasi] exception thrown when trying to index row with index on set
[ https://issues.apache.org/jira/browse/CASSANDRA-11169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15149775#comment-15149775 ] Pavel Yaskevich commented on CASSANDRA-11169: - [~beobal] I've pushed index validation changes to [CASSANDRA-11169|https://github.com/xedin/cassandra/tree/CASSANDRA-11169] it validates/rejects the case when column in question is complex and/or partitioner is not Murmur3Partitioner. > [sasi] exception thrown when trying to index row with index on set > > > Key: CASSANDRA-11169 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11169 > Project: Cassandra > Issue Type: Bug > Components: sasi >Reporter: Jon Haddad >Assignee: Pavel Yaskevich > Fix For: 3.4 > > > I have a brand new cluster, built off 1944bf507d66b5c103c136319caeb4a9e3767a69 > I created a new table with a set, then a SASI index on the set. I > tried to insert a row with a set, Cassandra throws an exception and becomes > unavailable. > {code} > cqlsh> create KEYSPACE test WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1}; > cqlsh> use test; > cqlsh:test> create table a (id int PRIMARY KEY , s set ); > cqlsh:test> create CUSTOM INDEX on a(s) USING > 'org.apache.cassandra.index.sasi.SASIIndex'; > cqlsh:test> insert into a (id, s) values (1, {'jon', 'haddad'}); > WriteTimeout: code=1100 [Coordinator node timed out waiting for replica > nodes' responses] message="Operation timed out - received only 0 responses." > info={'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} > {code} > Cassandra stacktrace: > {code} > java.lang.AssertionError: null > at org.apache.cassandra.db.rows.BTreeRow.getCell(BTreeRow.java:212) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.getValueOf(ColumnIndex.java:194) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.index(ColumnIndex.java:95) > ~[main/:na] > at > org.apache.cassandra.index.sasi.SASIIndex$1.insertRow(SASIIndex.java:247) > ~[main/:na] > at > org.apache.cassandra.index.SecondaryIndexManager$WriteTimeTransaction.onInserted(SecondaryIndexManager.java:808) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:335) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:295) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.buildInternal(BTree.java:136) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.build(BTree.java:118) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.update(BTree.java:177) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition.addAllWithSizeDelta(AtomicBTreePartition.java:156) > ~[main/:na] > at org.apache.cassandra.db.Memtable.put(Memtable.java:244) ~[main/:na] > at > org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1216) > ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:531) ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:399) ~[main/:na] > at org.apache.cassandra.db.Mutation.applyFuture(Mutation.java:202) > ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:214) ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:228) ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$$Lambda$201/413275033.run(Unknown > Source) ~[na:na] > at > org.apache.cassandra.service.StorageProxy$8.runMayThrow(StorageProxy.java:1343) > ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2520) > ~[main/:na] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[na:1.8.0_45] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) > ~[main/:na] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) > [main/:na] > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) > [main/:na] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45] > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11169) [sasi] exception thrown when trying to index row with index on set
[ https://issues.apache.org/jira/browse/CASSANDRA-11169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15145784#comment-15145784 ] Pavel Yaskevich commented on CASSANDRA-11169: - [~rustyrazorblade] collections are not yet supported properly by SASI since one couldn't even create index on collections before (2.0 where we ported SASI from), I will add a validation option to verify that "create index" fails on such columns meanwhile and will later check what if required to make it happen. > [sasi] exception thrown when trying to index row with index on set > > > Key: CASSANDRA-11169 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11169 > Project: Cassandra > Issue Type: Bug >Reporter: Jon Haddad > > I have a brand new cluster, built off 1944bf507d66b5c103c136319caeb4a9e3767a69 > I created a new table with a set, then a SASI index on the set. I > tried to insert a row with a set, Cassandra throws an exception and becomes > unavailable. > {code} > cqlsh> create KEYSPACE test WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1}; > cqlsh> use test; > cqlsh:test> create table a (id int PRIMARY KEY , s set ); > cqlsh:test> create CUSTOM INDEX on a(s) USING > 'org.apache.cassandra.index.sasi.SASIIndex'; > cqlsh:test> insert into a (id, s) values (1, {'jon', 'haddad'}); > WriteTimeout: code=1100 [Coordinator node timed out waiting for replica > nodes' responses] message="Operation timed out - received only 0 responses." > info={'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} > {code} > Cassandra stacktrace: > {code} > java.lang.AssertionError: null > at org.apache.cassandra.db.rows.BTreeRow.getCell(BTreeRow.java:212) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.getValueOf(ColumnIndex.java:194) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.index(ColumnIndex.java:95) > ~[main/:na] > at > org.apache.cassandra.index.sasi.SASIIndex$1.insertRow(SASIIndex.java:247) > ~[main/:na] > at > org.apache.cassandra.index.SecondaryIndexManager$WriteTimeTransaction.onInserted(SecondaryIndexManager.java:808) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:335) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:295) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.buildInternal(BTree.java:136) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.build(BTree.java:118) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.update(BTree.java:177) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition.addAllWithSizeDelta(AtomicBTreePartition.java:156) > ~[main/:na] > at org.apache.cassandra.db.Memtable.put(Memtable.java:244) ~[main/:na] > at > org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1216) > ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:531) ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:399) ~[main/:na] > at org.apache.cassandra.db.Mutation.applyFuture(Mutation.java:202) > ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:214) ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:228) ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$$Lambda$201/413275033.run(Unknown > Source) ~[na:na] > at > org.apache.cassandra.service.StorageProxy$8.runMayThrow(StorageProxy.java:1343) > ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2520) > ~[main/:na] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[na:1.8.0_45] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) > ~[main/:na] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) > [main/:na] > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) > [main/:na] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45] > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11169) [sasi] exception thrown when trying to index row with index on set
[ https://issues.apache.org/jira/browse/CASSANDRA-11169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15145748#comment-15145748 ] Jon Haddad commented on CASSANDRA-11169: /cc [~xedin] > [sasi] exception thrown when trying to index row with index on set > > > Key: CASSANDRA-11169 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11169 > Project: Cassandra > Issue Type: Bug >Reporter: Jon Haddad > > I have a brand new cluster, built off 1944bf507d66b5c103c136319caeb4a9e3767a69 > I created a new table with a set, then a SASI index on the set. I > tried to insert a row with a set, Cassandra throws an exception and becomes > unavailable. > {code} > cqlsh> create KEYSPACE test WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1}; > cqlsh> use test; > cqlsh:test> create table a (id int PRIMARY KEY , s set ); > cqlsh:test> > cqlsh:test> create CUSTOM INDEX on a(s) USING ' > > cqlsh:test> create CUSTOM INDEX on a(s) USING ' > > cqlsh:test> create CUSTOM INDEX on a(s) USING > 'org.apache.cassandra.index.sasi.SASIIndex'; > cqlsh:test> insert into a (id, s) values (1, {"jon", "haddad"}); > SyntaxException: message="line 1:39 no viable alternative at input ',' (... s) values (1, > [{]"jon",...)"> > cqlsh:test> insert into a (id, s) values (1, {'jon', 'haddad'}); > WriteTimeout: code=1100 [Coordinator node timed out waiting for replica > nodes' responses] message="Operation timed out - received only 0 responses." > info={'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} > {code} > Cassandra stacktrace: > {code} > java.lang.AssertionError: null > at org.apache.cassandra.db.rows.BTreeRow.getCell(BTreeRow.java:212) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.getValueOf(ColumnIndex.java:194) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.index(ColumnIndex.java:95) > ~[main/:na] > at > org.apache.cassandra.index.sasi.SASIIndex$1.insertRow(SASIIndex.java:247) > ~[main/:na] > at > org.apache.cassandra.index.SecondaryIndexManager$WriteTimeTransaction.onInserted(SecondaryIndexManager.java:808) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:335) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:295) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.buildInternal(BTree.java:136) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.build(BTree.java:118) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.update(BTree.java:177) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition.addAllWithSizeDelta(AtomicBTreePartition.java:156) > ~[main/:na] > at org.apache.cassandra.db.Memtable.put(Memtable.java:244) ~[main/:na] > at > org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1216) > ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:531) ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:399) ~[main/:na] > at org.apache.cassandra.db.Mutation.applyFuture(Mutation.java:202) > ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:214) ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:228) ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$$Lambda$201/413275033.run(Unknown > Source) ~[na:na] > at > org.apache.cassandra.service.StorageProxy$8.runMayThrow(StorageProxy.java:1343) > ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2520) > ~[main/:na] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[na:1.8.0_45] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) > ~[main/:na] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) > [main/:na] > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) > [main/:na] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45] > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)
[jira] [Commented] (CASSANDRA-11169) [sasi] exception thrown when trying to index row with index on set
[ https://issues.apache.org/jira/browse/CASSANDRA-11169?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=15145751#comment-15145751 ] Jon Haddad commented on CASSANDRA-11169: FWIW, the behavior I was expecting is to have a prefix index on each of the elements in the set. > [sasi] exception thrown when trying to index row with index on set > > > Key: CASSANDRA-11169 > URL: https://issues.apache.org/jira/browse/CASSANDRA-11169 > Project: Cassandra > Issue Type: Bug >Reporter: Jon Haddad > > I have a brand new cluster, built off 1944bf507d66b5c103c136319caeb4a9e3767a69 > I created a new table with a set, then a SASI index on the set. I > tried to insert a row with a set, Cassandra throws an exception and becomes > unavailable. > {code} > cqlsh> create KEYSPACE test WITH replication = {'class': 'SimpleStrategy', > 'replication_factor': 1}; > cqlsh> use test; > cqlsh:test> create table a (id int PRIMARY KEY , s set ); > cqlsh:test> create CUSTOM INDEX on a(s) USING > 'org.apache.cassandra.index.sasi.SASIIndex'; > cqlsh:test> insert into a (id, s) values (1, {'jon', 'haddad'}); > WriteTimeout: code=1100 [Coordinator node timed out waiting for replica > nodes' responses] message="Operation timed out - received only 0 responses." > info={'received_responses': 0, 'required_responses': 1, 'consistency': 'ONE'} > {code} > Cassandra stacktrace: > {code} > java.lang.AssertionError: null > at org.apache.cassandra.db.rows.BTreeRow.getCell(BTreeRow.java:212) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.getValueOf(ColumnIndex.java:194) > ~[main/:na] > at > org.apache.cassandra.index.sasi.conf.ColumnIndex.index(ColumnIndex.java:95) > ~[main/:na] > at > org.apache.cassandra.index.sasi.SASIIndex$1.insertRow(SASIIndex.java:247) > ~[main/:na] > at > org.apache.cassandra.index.SecondaryIndexManager$WriteTimeTransaction.onInserted(SecondaryIndexManager.java:808) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:335) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:295) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.buildInternal(BTree.java:136) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.build(BTree.java:118) > ~[main/:na] > at org.apache.cassandra.utils.btree.BTree.update(BTree.java:177) > ~[main/:na] > at > org.apache.cassandra.db.partitions.AtomicBTreePartition.addAllWithSizeDelta(AtomicBTreePartition.java:156) > ~[main/:na] > at org.apache.cassandra.db.Memtable.put(Memtable.java:244) ~[main/:na] > at > org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1216) > ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:531) ~[main/:na] > at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:399) ~[main/:na] > at org.apache.cassandra.db.Mutation.applyFuture(Mutation.java:202) > ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:214) ~[main/:na] > at org.apache.cassandra.db.Mutation.apply(Mutation.java:228) ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$$Lambda$201/413275033.run(Unknown > Source) ~[na:na] > at > org.apache.cassandra.service.StorageProxy$8.runMayThrow(StorageProxy.java:1343) > ~[main/:na] > at > org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2520) > ~[main/:na] > at > java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) > ~[na:1.8.0_45] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) > ~[main/:na] > at > org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) > [main/:na] > at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:105) > [main/:na] > at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45] > {code} -- This message was sent by Atlassian JIRA (v6.3.4#6332)