Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id A2A78200BDB for ; Fri, 4 Nov 2016 02:16:00 +0100 (CET) Received: by cust-asf.ponee.io (Postfix) id A1481160AFF; Fri, 4 Nov 2016 01:16:00 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id C3BD1160B0B for ; Fri, 4 Nov 2016 02:15:59 +0100 (CET) Received: (qmail 51615 invoked by uid 500); 4 Nov 2016 01:15:58 -0000 Mailing-List: contact commits-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@cassandra.apache.org Delivered-To: mailing list commits@cassandra.apache.org Received: (qmail 51588 invoked by uid 99); 4 Nov 2016 01:15:58 -0000 Received: from arcas.apache.org (HELO arcas) (140.211.11.28) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Nov 2016 01:15:58 +0000 Received: from arcas.apache.org (localhost [127.0.0.1]) by arcas (Postfix) with ESMTP id B4F382C0D55 for ; Fri, 4 Nov 2016 01:15:58 +0000 (UTC) Date: Fri, 4 Nov 2016 01:15:58 +0000 (UTC) From: "Voytek Jarnot (JIRA)" To: commits@cassandra.apache.org Message-ID: In-Reply-To: References: Subject: [jira] [Created] (CASSANDRA-12877) SASI index throwing AssertionError on index creation MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-JIRA-FingerPrint: 30527f35849b9dde25b450d4833f0394 archived-at: Fri, 04 Nov 2016 01:16:00 -0000 Voytek Jarnot created CASSANDRA-12877: ----------------------------------------- Summary: SASI index throwing AssertionError on index creation Key: CASSANDRA-12877 URL: https://issues.apache.org/jira/browse/CASSANDRA-12877 Project: Cassandra Issue Type: Bug Components: sasi Environment: 3.9 and 3.10 tested on both linux and osx Reporter: Voytek Jarnot Possibly a 3.10 regression? I built and installed a 3.10 snapshot (built 03-Nov-2016) to get around CASSANDRA-11670, CASSANDRA-12689, and CASSANDRA-12223 which are holding me back when using 3.9 Would like to state up front that I can't duplicate this with a lightweight throwaway test, which is frustrating, but it keeps hitting me on our dev cluster. It may require a certain amount of data present (or perhaps a high number of nulls in the indexed column) - never had any luck duplicating with the table shown below. Table roughly resembles the following, with many more 'valx' columns: CREATE TABLE idx_test_table ( id1 text, id2 text, id3 text, id4 text, val1 text, val2 text, PRIMARY KEY ((id1, id2), id3, id4) ) WITH CLUSTERING ORDER BY (id3 DESC, id4 ASC); CREATE CUSTOM INDEX idx_test_index ON idx_test_table (val2) USING 'org.apache.cassandra.index.sasi.SASIIndex'; The error below occurs in 3.10, but not in 3.9; it occurs whether I insert a bunch of dev data and then create the index, or whether I create the index and then insert a bunch of test data. {quote} INFO [MemtableFlushWriter:5] 2016-11-03 21:00:19,416 PerSSTableIndexWriter.java:284 - Scheduling index flush to /u01/cassandra-data/data/essatc1/audit_record-520c1dc0a1e411e691db0bd4b103bd15/mc-266-big-SI_idx_ar_document_nbr.db INFO [SASI-Memtable:1] 2016-11-03 21:00:19,450 PerSSTableIndexWriter.java:335 - Index flush to /u01/cassandra-data/data/essatc1/audit_record-520c1dc0a1e411e691db0bd4b103bd15/mc-266-big-SI_idx_ar_document_nbr.db took 33 ms. ERROR [SASI-Memtable:1] 2016-11-03 21:00:19,454 CassandraDaemon.java:229 - Exception in thread Thread[SASI-Memtable:1,5,main] java.lang.AssertionError: cannot have more than 8 overflow collisions per leaf, but had: 25 at org.apache.cassandra.index.sasi.disk.AbstractTokenTreeBuilder$Leaf.createOverflowEntry(AbstractTokenTreeBuilder.java:357) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.AbstractTokenTreeBuilder$Leaf.createEntry(AbstractTokenTreeBuilder.java:346) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.DynamicTokenTreeBuilder$DynamicLeaf.serializeData(DynamicTokenTreeBuilder.java:180) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.AbstractTokenTreeBuilder$Leaf.serialize(AbstractTokenTreeBuilder.java:306) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.AbstractTokenTreeBuilder.write(AbstractTokenTreeBuilder.java:90) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.OnDiskIndexBuilder$MutableDataBlock.flushAndClear(OnDiskIndexBuilder.java:629) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.OnDiskIndexBuilder$MutableLevel.flush(OnDiskIndexBuilder.java:446) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.OnDiskIndexBuilder$MutableLevel.add(OnDiskIndexBuilder.java:433) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.OnDiskIndexBuilder.addTerm(OnDiskIndexBuilder.java:207) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.OnDiskIndexBuilder.finish(OnDiskIndexBuilder.java:293) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.OnDiskIndexBuilder.finish(OnDiskIndexBuilder.java:258) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.OnDiskIndexBuilder.finish(OnDiskIndexBuilder.java:241) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.PerSSTableIndexWriter$Index.lambda$scheduleSegmentFlush$0(PerSSTableIndexWriter.java:267) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.PerSSTableIndexWriter$Index.lambda$complete$1(PerSSTableIndexWriter.java:296) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) ~[na:1.8.0_91] at java.util.concurrent.FutureTask.run(FutureTask.java:266) ~[na:1.8.0_91] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) ~[na:1.8.0_91] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_91] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_91] ERROR [MemtableFlushWriter:5] 2016-11-03 21:00:19,459 DataTracker.java:168 - Can't open index file at /u01/cassandra-data/data/essatc1/audit_record-520c1dc0a1e411e691db0bd4b103bd15/mc-266-big-SI_idx_ar_document_nbr.db, skipping. java.lang.IllegalArgumentException: position: -3995747617649042944, limit: 20480 at org.apache.cassandra.index.sasi.utils.MappedBuffer.position(MappedBuffer.java:106) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.disk.OnDiskIndex.(OnDiskIndex.java:147) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.SSTableIndex.(SSTableIndex.java:62) ~[apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.conf.DataTracker.getIndexes(DataTracker.java:150) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.conf.DataTracker.update(DataTracker.java:69) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.conf.ColumnIndex.update(ColumnIndex.java:147) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.index.sasi.SASIIndex.handleNotification(SASIIndex.java:320) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.db.lifecycle.Tracker.notifyAdded(Tracker.java:421) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.db.lifecycle.Tracker.replaceFlushed(Tracker.java:356) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.db.compaction.CompactionStrategyManager.replaceFlushed(CompactionStrategyManager.java:317) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.db.ColumnFamilyStore.replaceFlushed(ColumnFamilyStore.java:1574) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.db.ColumnFamilyStore$Flush.flushMemtable(ColumnFamilyStore.java:1197) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at org.apache.cassandra.db.ColumnFamilyStore$Flush.run(ColumnFamilyStore.java:1100) [apache-cassandra-3.10-SNAPSHOT.jar:3.10-SNAPSHOT] at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_91] at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_91] at java.lang.Thread.run(Thread.java:745) [na:1.8.0_91] {quote} I can attach more stack traces, but it's just more of the same. -- This message was sent by Atlassian JIRA (v6.3.4#6332)