Details
-
Bug
-
Status: Resolved
-
Urgent
-
Resolution: Fixed
-
None
-
Critical
Description
index on udt built failed and no data could be inserted
steps to reproduce:
CREATE KEYSPACE ks1 WITH replication =
{'class': 'SimpleStrategy', 'replication_factor': '2'}AND durable_writes = true;
CREATE TYPE ks1.address (
street text,
city text,
zip_code int,
phones set<text>
);
CREATE TYPE ks1.fullname (
firstname text,
lastname text
);
CREATE TABLE ks1.users (
id uuid PRIMARY KEY,
addresses map<text, frozen<address>>,
age int,
direct_reports set<frozen<fullname>>,
name fullname
) WITH bloom_filter_fp_chance = 0.01
AND caching =
AND comment = ''
AND compaction =
AND compression =
{'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'} AND crc_check_chance = 1.0
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99PERCENTILE';
SELECT * FROM users where name =
{ firstname : 'first' , lastname : 'last'} allow filtering;
ReadFailure: Error from server: code=1300 [Replica(s) failed to execute read] message="Operation failed - received 0 responses and 1 failures" info=
WARN [ReadStage-2] 2017-02-22 16:59:33,392 AbstractLocalAwareExecutorService.java:169 - Uncaught exception on thread Thread[ReadStage-2,5,main]: {}
java.lang.AssertionError: Only CONTAINS and CONTAINS_KEY are supported for 'complex' types
at org.apache.cassandra.db.filter.RowFilter$SimpleExpression.isSatisfiedBy(RowFilter.java:683) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.filter.RowFilter$CQLFilter$1IsSatisfiedFilter.applyToRow(RowFilter.java:303) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.transform.BaseRows.applyOne(BaseRows.java:120) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.transform.BaseRows.add(BaseRows.java:110) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.transform.UnfilteredRows.add(UnfilteredRows.java:41) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.transform.Transformation.add(Transformation.java:162) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.transform.Transformation.apply(Transformation.java:128) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.filter.RowFilter$CQLFilter$1IsSatisfiedFilter.applyToPartition(RowFilter.java:292) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.filter.RowFilter$CQLFilter$1IsSatisfiedFilter.applyToPartition(RowFilter.java:281) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.transform.BasePartitions.hasNext(BasePartitions.java:96) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.partitions.UnfilteredPartitionIterators$Serializer.serialize(UnfilteredPartitionIterators.java:289) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ReadResponse$LocalDataResponse.build(ReadResponse.java:145) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ReadResponse$LocalDataResponse.<init>(ReadResponse.java:138) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ReadResponse$LocalDataResponse.<init>(ReadResponse.java:134) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ReadResponse.createDataResponse(ReadResponse.java:76) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ReadCommand.createResponse(ReadCommand.java:323) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.StorageProxy$LocalReadRunnable.runMayThrow(StorageProxy.java:1803) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:2486) ~[apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_121]
at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) [apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:109) [apache-cassandra-3.9.jar:3.9]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
CREATE INDEX users_name_idx ON ks1.users (name);
ERROR [CompactionExecutor:776] 2017-02-22 16:49:41,934 CassandraDaemon.java:226 - Exception in thread Thread[CompactionExecutor:776,1,main]
java.lang.RuntimeException: null for ks: ks1, table: users.users_name_idx
at org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1316) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex.insert(CassandraIndex.java:531) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex.access$100(CassandraIndex.java:72) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex$1.indexCell(CassandraIndex.java:444) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex$1.indexCells(CassandraIndex.java:436) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex$1.insertRow(CassandraIndex.java:386) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.SecondaryIndexManager.lambda$indexPartition$17(SecondaryIndexManager.java:552) ~[apache-cassandra-3.9.jar:3.9]
at java.lang.Iterable.forEach(Iterable.java:75) ~[na:1.8.0_121]
at org.apache.cassandra.index.SecondaryIndexManager.indexPartition(SecondaryIndexManager.java:552) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Keyspace.indexPartition(Keyspace.java:566) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CollatedViewIndexBuilder.build(CollatedViewIndexBuilder.java:70) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.compaction.CompactionManager$12.run(CompactionManager.java:1468) ~[apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_121]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_121]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_121]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_121]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
Caused by: java.nio.BufferUnderflowException: null
at java.nio.Buffer.nextGetIndex(Buffer.java:506) ~[na:1.8.0_121]
at java.nio.HeapByteBuffer.getInt(HeapByteBuffer.java:361) ~[na:1.8.0_121]
at org.apache.cassandra.db.marshal.TupleType.compareCustom(TupleType.java:109) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.marshal.AbstractType.compare(AbstractType.java:159) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.dht.LocalPartitioner$LocalToken.compareTo(LocalPartitioner.java:139) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.dht.LocalPartitioner$LocalToken.compareTo(LocalPartitioner.java:120) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:85) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:39) ~[apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.ConcurrentSkipListMap.cpr(ConcurrentSkipListMap.java:655) ~[na:1.8.0_121]
at java.util.concurrent.ConcurrentSkipListMap.doGet(ConcurrentSkipListMap.java:794) ~[na:1.8.0_121]
at java.util.concurrent.ConcurrentSkipListMap.get(ConcurrentSkipListMap.java:1546) ~[na:1.8.0_121]
at org.apache.cassandra.db.Memtable.put(Memtable.java:234) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1303) ~[apache-cassandra-3.9.jar:3.9]
... 16 common frames omitted
ERROR [SecondaryIndexManagement:3] 2017-02-22 16:49:41,934 CassandraDaemon.java:226 - Exception in thread Thread[SecondaryIndexManagement:3,5,main]
java.lang.RuntimeException: java.util.concurrent.ExecutionException: java.lang.RuntimeException: null for ks: ks1, table: users.users_name_idx
at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:403) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex.buildBlocking(CassandraIndex.java:715) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex.lambda$getBuildIndexTask$5(CassandraIndex.java:685) ~[apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_121]
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_121]
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_121]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
Caused by: java.util.concurrent.ExecutionException: java.lang.RuntimeException: null for ks: ks1, table: users.users_name_idx
at java.util.concurrent.FutureTask.report(FutureTask.java:122) ~[na:1.8.0_121]
at java.util.concurrent.FutureTask.get(FutureTask.java:192) ~[na:1.8.0_121]
at org.apache.cassandra.utils.FBUtilities.waitOnFuture(FBUtilities.java:399) ~[apache-cassandra-3.9.jar:3.9]
... 6 common frames omitted
Caused by: java.lang.RuntimeException: null for ks: ks1, table: users.users_name_idx
at org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1316) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex.insert(CassandraIndex.java:531) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex.access$100(CassandraIndex.java:72) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex$1.indexCell(CassandraIndex.java:444) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex$1.indexCells(CassandraIndex.java:436) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex$1.insertRow(CassandraIndex.java:386) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.SecondaryIndexManager.lambda$indexPartition$17(SecondaryIndexManager.java:552) ~[apache-cassandra-3.9.jar:3.9]
at java.lang.Iterable.forEach(Iterable.java:75) ~[na:1.8.0_121]
at org.apache.cassandra.index.SecondaryIndexManager.indexPartition(SecondaryIndexManager.java:552) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Keyspace.indexPartition(Keyspace.java:566) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CollatedViewIndexBuilder.build(CollatedViewIndexBuilder.java:70) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.compaction.CompactionManager$12.run(CompactionManager.java:1468) ~[apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_121]
... 4 common frames omitted
Caused by: java.nio.BufferUnderflowException: null
at java.nio.Buffer.nextGetIndex(Buffer.java:506) ~[na:1.8.0_121]
at java.nio.HeapByteBuffer.getInt(HeapByteBuffer.java:361) ~[na:1.8.0_121]
at org.apache.cassandra.db.marshal.TupleType.compareCustom(TupleType.java:109) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.marshal.AbstractType.compare(AbstractType.java:159) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.dht.LocalPartitioner$LocalToken.compareTo(LocalPartitioner.java:139) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.dht.LocalPartitioner$LocalToken.compareTo(LocalPartitioner.java:120) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:85) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:39) ~[apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.ConcurrentSkipListMap.cpr(ConcurrentSkipListMap.java:655) ~[na:1.8.0_121]
at java.util.concurrent.ConcurrentSkipListMap.doGet(ConcurrentSkipListMap.java:794) ~[na:1.8.0_121]
at java.util.concurrent.ConcurrentSkipListMap.get(ConcurrentSkipListMap.java:1546) ~[na:1.8.0_121]
at org.apache.cassandra.db.Memtable.put(Memtable.java:234) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1303) ~[apache-cassandra-3.9.jar:3.9]
... 16 common frames omitted
SELECT * FROM users where name =
{ firstname : 'first' , lastname : 'last'};
ReadFailure: Error from server: code=1300 [Replica(s) failed to execute read] message="Operation failed - received 0 responses and 1 failures" info=
WARN [ReadStage-2] 2017-02-22 16:55:43,139 AbstractLocalAwareExecutorService.java:169 - Uncaught exception on thread Thread[ReadStage-2,5,main]: {}
java.lang.RuntimeException: org.apache.cassandra.index.IndexNotAvailableException: The secondary index 'users_name_idx' is not yet available
at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:2490) ~[apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_121]
at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) [apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:109) [apache-cassandra-3.9.jar:3.9]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
Caused by: org.apache.cassandra.index.IndexNotAvailableException: The secondary index 'users_name_idx' is not yet available
at org.apache.cassandra.db.ReadCommand.executeLocally(ReadCommand.java:390) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.StorageProxy$LocalReadRunnable.runMayThrow(StorageProxy.java:1801) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.StorageProxy$DroppableRunnable.run(StorageProxy.java:2486) ~[apache-cassandra-3.9.jar:3.9]
... 5 common frames omitted
insert into users (id, name) values (uuid(),
{firstname: 'a', lastname: 'b'});
WriteFailure: Error from server: code=1500 [Replica(s) failed to execute write] message="Operation failed - received 0 responses and 1 failures" info=
ERROR [MutationStage-2] 2017-02-22 17:04:34,355 StorageProxy.java:1353 - Failed to apply mutation locally : {}
java.lang.RuntimeException: null for ks: ks1, table: users.users_name_idx for ks: ks1, table: users
at org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1316) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:526) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Keyspace.apply(Keyspace.java:396) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Mutation.applyFuture(Mutation.java:215) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Mutation.apply(Mutation.java:227) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Mutation.apply(Mutation.java:241) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.StorageProxy$8.runMayThrow(StorageProxy.java:1347) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.service.StorageProxy$LocalMutationRunnable.run(StorageProxy.java:2539) [apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_121]
at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$FutureTask.run(AbstractLocalAwareExecutorService.java:164) [apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.concurrent.AbstractLocalAwareExecutorService$LocalSessionFutureTask.run(AbstractLocalAwareExecutorService.java:136) [apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.concurrent.SEPWorker.run(SEPWorker.java:109) [apache-cassandra-3.9.jar:3.9]
at java.lang.Thread.run(Thread.java:745) [na:1.8.0_121]
Caused by: java.lang.RuntimeException: null for ks: ks1, table: users.users_name_idx
at org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1316) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex.insert(CassandraIndex.java:531) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex.access$100(CassandraIndex.java:72) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex$1.indexCell(CassandraIndex.java:444) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex$1.indexCells(CassandraIndex.java:436) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.internal.CassandraIndex$1.insertRow(CassandraIndex.java:386) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.index.SecondaryIndexManager$WriteTimeTransaction.onInserted(SecondaryIndexManager.java:808) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:335) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.partitions.AtomicBTreePartition$RowUpdater.apply(AtomicBTreePartition.java:295) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.utils.btree.BTree.buildInternal(BTree.java:137) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.utils.btree.BTree.build(BTree.java:119) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.utils.btree.BTree.update(BTree.java:175) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.partitions.AtomicBTreePartition.addAllWithSizeDelta(AtomicBTreePartition.java:156) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.Memtable.put(Memtable.java:258) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1303) ~[apache-cassandra-3.9.jar:3.9]
... 12 common frames omitted
Caused by: java.nio.BufferUnderflowException: null
at java.nio.Buffer.nextGetIndex(Buffer.java:506) ~[na:1.8.0_121]
at java.nio.HeapByteBuffer.getInt(HeapByteBuffer.java:361) ~[na:1.8.0_121]
at org.apache.cassandra.db.marshal.TupleType.compareCustom(TupleType.java:109) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.marshal.AbstractType.compare(AbstractType.java:159) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.dht.LocalPartitioner$LocalToken.compareTo(LocalPartitioner.java:139) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.dht.LocalPartitioner$LocalToken.compareTo(LocalPartitioner.java:120) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:85) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.DecoratedKey.compareTo(DecoratedKey.java:39) ~[apache-cassandra-3.9.jar:3.9]
at java.util.concurrent.ConcurrentSkipListMap.cpr(ConcurrentSkipListMap.java:655) ~[na:1.8.0_121]
at java.util.concurrent.ConcurrentSkipListMap.doGet(ConcurrentSkipListMap.java:794) ~[na:1.8.0_121]
at java.util.concurrent.ConcurrentSkipListMap.get(ConcurrentSkipListMap.java:1546) ~[na:1.8.0_121]
at org.apache.cassandra.db.Memtable.put(Memtable.java:234) ~[apache-cassandra-3.9.jar:3.9]
at org.apache.cassandra.db.ColumnFamilyStore.apply(ColumnFamilyStore.java:1303) ~[apache-cassandra-3.9.jar:3.9]
... 26 common frames omitted