This is potentially just a bad query. It looks like ThriftValidation#validateFilterClauses just checks the indexes and values are of the right type and does not compare actual values. In other words, the query could have made it that far with a bad comparison value.
What exception are you getting back on the client? On Mon, Aug 19, 2013 at 8:45 AM, <tamas.fold...@thomsonreuters.com> wrote: > Hi,**** > > ** ** > > We are upgrading our 1.0 Cassandra installation to 1.2 (via 1.1), and had > Cassandra 1.2.5 running in test for a while.**** > > Everything seems fine except that exceptions like below come sporadically, > without correlating with anything else. They *seem* to come during work > hours, so it can be that one of our devs run invalid commands, but then > noone complained about any errors they’d get.** > > I have not found any user-level exceptions in the client logs either, so I > wonder what this might be, how serious it is, what are the consequences, > how to avoid (if necessary), etc… **** > > Unfortunately the logs don’t say anything about in which keyspace this > occurred – I could not find any sstables with index 1771 (if that is what > that number means…).**** > > Any help is appreciated.**** > > ** ** > > ERROR [ReadStage:1771] 2013-08-13 16:40:17,532 CassandraDaemon.java (line > 175) Exception in thread Thread[ReadStage:1771,5,main]**** > > java.lang.IllegalArgumentException: fromIndex(60) > toIndex(0)**** > > at java.util.SubList.<init>(AbstractList.java:604)**** > > at java.util.RandomAccessSubList.<init>(AbstractList.java:758)**** > > at java.util.AbstractList.subList(AbstractList.java:468)**** > > at > org.apache.cassandra.db.ArrayBackedSortedColumns$SlicesIterator.computeNext(ArrayBackedSortedColumns.java:365) > **** > > at > org.apache.cassandra.db.ArrayBackedSortedColumns$SlicesIterator.computeNext(ArrayBackedSortedColumns.java:325) > **** > > at > com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) > **** > > at > com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) > **** > > at org.apache.cassandra.db.Memtable$6.hasNext(Memtable.java:356)** > ** > > at > org.apache.cassandra.db.filter.QueryFilter$2.getNext(QueryFilter.java:171) > **** > > at > org.apache.cassandra.db.filter.QueryFilter$2.hasNext(QueryFilter.java:154) > **** > > at > org.apache.cassandra.utils.MergeIterator$OneToOne.computeNext(MergeIterator.java:199) > **** > > at > com.google.common.collect.AbstractIterator.tryToComputeNext(AbstractIterator.java:143) > **** > > at > com.google.common.collect.AbstractIterator.hasNext(AbstractIterator.java:138) > **** > > at > org.apache.cassandra.db.filter.SliceQueryFilter.collectReducedColumns(SliceQueryFilter.java:157) > **** > > at > org.apache.cassandra.db.filter.QueryFilter.collateColumns(QueryFilter.java:136) > **** > > at > org.apache.cassandra.db.filter.QueryFilter.collateOnDiskAtom(QueryFilter.java:84) > **** > > at > org.apache.cassandra.db.ColumnFamilyStore.filterColumnFamily(ColumnFamilyStore.java:1242) > **** > > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1210) > **** > > at > org.apache.cassandra.db.ColumnFamilyStore.getColumnFamily(ColumnFamilyStore.java:1126) > **** > > at org.apache.cassandra.db.Table.getRow(Table.java:347)**** > > at > org.apache.cassandra.db.SliceFromReadCommand.getRow(SliceFromReadCommand.java:70) > **** > > at > org.apache.cassandra.db.ReadVerbHandler.doVerb(ReadVerbHandler.java:44)*** > * > > at > org.apache.cassandra.net.MessageDeliveryTask.run(MessageDeliveryTask.java:56) > **** > > at > java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) > **** > > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) > **** > > at java.lang.Thread.run(Thread.java:662)**** > > ** ** > > Thanks,**** > > Tamas**** > > ** ** > > · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · · > · · > *Tamas Foldesi* > Senior Software Engineer > *Thomson Reuters* > > **** > > ** ** >